{"_id":"@crave/farmblocks-input-text","_rev":"1281-a371a8ca6e437ba061ee0e81d9c27feb","name":"@crave/farmblocks-input-text","description":"A form field to input simple text","dist-tags":{"canary":"5.1.14-alpha-fix-deps-6232.1.2","latest":"5.1.14","4208.1":"3.6.3-4208.1.8","4209.1":"3.6.3-4209.1.8"},"versions":{"0.2.0-alpha.274dc37a":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.274dc37a","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.274dc37a","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-o5qWIipYcC9jr/P0C2wNGVFyIJ/aCpZnnTev+NDRO3qQ02tCRa+7gZ5G4a88rUwzW0iGaTe0E5xDRlKHTALLvg==","shasum":"84e746988308c6baeba38bc6fcb3069c712fb0fb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.274dc37a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICu1n6jrIoBK5XFoBpQnBbPc9Ax7qbC8m4Ux50EcX6N3AiEAxlxI/f1fDFa5hSiKgUElqRllWeuDqu1Ga8RCH3p6al0="}]},"maintainers":[{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.274dc37a.tgz_1512416186143_0.667989113368094"},"directories":{}},"0.2.0-alpha.ac905c8f":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.ac905c8f","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-theme":"^1.5.0-alpha.ac905c8f"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.ac905c8f","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-JMs81zg5HvafEVuehyZobmTTr52KP1LcdrfNNVqH7JNOOwgD/xnpwt3MP2bkyNwfMezBTFCW5b55qyfo9Dq+cg==","shasum":"c281c35a1dd37f51a1ac2abaf9f5870d44c688c0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.ac905c8f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID6SNLTCKBnegT55BXkY4wQZvANRZ+JVL7a4Ew251+7PAiBaSgP3HuAhkk9vomxZ/aq0sZ02nT2Jtlw1VUZv7LroEw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.ac905c8f.tgz_1512499009369_0.7225112458691001"},"directories":{}},"0.2.0-alpha.89b5bfb1":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.89b5bfb1","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-theme":"^1.5.0-alpha.89b5bfb1"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.89b5bfb1","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-VIEabgS7yWq6qsdaMgeFGjs4AsR8kELHuihgEuPCMfAr0IPqaochMRK6X1lIbe3S7iWSk2QCvDLup90mrO9Ilw==","shasum":"cfc2600e71bd4be9b52a34d0f51f1a4122a88d0d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.89b5bfb1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDAK55zCsLJ8TQrjQLoXRszRiK237lw0N09siUFPBRToAIgPQAjRKDOyUZe0506MIAVfuwJvHTFDj0QDdl6HTEPSas="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.89b5bfb1.tgz_1512503360202_0.03913740999996662"},"directories":{}},"0.2.0-alpha.0cd080b2":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.0cd080b2","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-theme":"^1.5.0-alpha.0cd080b2"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.0cd080b2","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-a/VWECqrGAhGBr4Myrba2Wauvw0sdNHJGa9INq5rBACp4i6moxXPcoIbZnqeqo7ETUp+J/pP/B8cD8Rrl3+IHw==","shasum":"91b862d3977702f28b8dc67a603dae2e5402b076","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.0cd080b2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChu84tHe4Z4bzjGH8D+pRk3+QuSNDtRSRhbmQkkNhlDgIhAJkPDJmdGVWziqNf3sHmTpafjG8hTC/tzpmLEOZTly8E"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.0cd080b2.tgz_1512644578997_0.006048263981938362"},"directories":{}},"0.2.0-alpha.2805e458":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.2805e458","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-theme":"^1.5.0-alpha.2805e458","@crave/farmblocks-tooltip":"^0.4.0-alpha.2805e458"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.2805e458","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-9G7oKLkKTR5Sr4rkZwB590D6d1JObJyDYCrYdU7ilVW1asJO8Lctlm2LYF8qmXLbFgNJ02vcY9hS93T6Ct8P/w==","shasum":"4f69843475cc491087e219b5403327c65b20ef6e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.2805e458.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBUwxysrEuMZNiveamWB6uUHLXHSi74jPKZ7nZG3MjeQIhAJ3UfeO6R/n480UXKMz/FHJDOg82FBNxT18VFssIK6PM"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.2805e458.tgz_1512656886883_0.6999053228646517"},"directories":{}},"0.2.0-alpha.981b98e6":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.981b98e6","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-theme":"^1.5.0-alpha.981b98e6","@crave/farmblocks-tooltip":"^0.4.0-alpha.981b98e6"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.981b98e6","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-RTyyLVDkFchR0roT5ZDVnUylpc0U92+PJp5ulpykysLKK+kvTfVel96+xnR/24j0Rs0ikimn2ZdGcUy2fr8JHg==","shasum":"f7f88ff8d577b26675091d654ec12bc2a5f96372","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.981b98e6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXka6PcZcbQhMWWFyi/BsCu5v76hxAbx0nD2Q2tYVTkQIgRyjVl/xACvt5o1drLzEhnDRGEKyJcq8qb6fmTC0fVXQ="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.981b98e6.tgz_1512659465056_0.5291984584182501"},"directories":{}},"0.2.0-alpha.66f0e481":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.66f0e481","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.66f0e481","@crave/farmblocks-theme":"^1.5.0-alpha.66f0e481","@crave/farmblocks-tooltip":"^0.4.0-alpha.66f0e481"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.66f0e481","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-UhI/ebzvy9k+lWYxvLbG6OoXHLI54Jh6ENbnGTzXXi83A0qUHW3NQUOdfizvNIeSWITOBzm48S4TVNSekK8V/g==","shasum":"368abfec4c6bee409de2a758bc5e5e02c730c400","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.66f0e481.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNazMs8YMX1oDTi23yiTE1AJWiOXuemS24U+Xg1WlDaAIhAP5m2+Svry/eKoVR5edUiAeA+rQ1KaeJ+ax252UO4Zh/"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.66f0e481.tgz_1512669948011_0.06981588457711041"},"directories":{}},"0.2.0-alpha.c5a69617":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.c5a69617","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.c5a69617","@crave/farmblocks-text":"^1.2.0-alpha.c5a69617","@crave/farmblocks-theme":"^1.5.0-alpha.c5a69617","@crave/farmblocks-tooltip":"^0.4.0-alpha.c5a69617"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.c5a69617","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-NvvICKX7cca20HEUCcxvNjeHewmT2Knr5Nsf6Qs/E9CSBYGnFwFoBI/qzDsXDLHYiknKsPsL5RdK89wntoHuuQ==","shasum":"8189c55928a688ce2315ac5a5c5524bece3a10c8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.c5a69617.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCT57Lzex2JV+s0jmnRWeHTAxotfO26eFu7zBv19gV4jgIgA0ZhETG+P+zyhJwyjt8+v1LHrJzhAj+1YfBqO6f43Wg="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.c5a69617.tgz_1512683796745_0.5483822335954756"},"directories":{}},"0.2.0-alpha.ab698c74":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.ab698c74","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.ab698c74","@crave/farmblocks-text":"^1.2.0-alpha.ab698c74","@crave/farmblocks-theme":"^1.5.0-alpha.ab698c74","@crave/farmblocks-tooltip":"^0.4.0-alpha.ab698c74"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.ab698c74","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-LluHEK45mCK2gzv8DuPDqAzl38OwLs1Pb49C7zlRu/OI/hAZ67UKW4khVIfDpgZygprTFmfwANmR3/ckdQdoGg==","shasum":"dfd4b70761e63d646963f146a101ce3db1682075","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.ab698c74.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCz8mYTAbAtrWW0V3EUDHD4OMmG9mh3Xgeyxfv7LysrBQIhAPAk7CTyeDbcDRz64CG1f5lhaObfNUwdmzj3QFrYZVux"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.ab698c74.tgz_1512706962257_0.6511060332413763"},"directories":{}},"0.2.0-alpha.30dc3ea1":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.30dc3ea1","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.30dc3ea1","@crave/farmblocks-text":"^1.2.0-alpha.30dc3ea1","@crave/farmblocks-theme":"^1.5.0-alpha.30dc3ea1","@crave/farmblocks-tooltip":"^0.4.0-alpha.30dc3ea1"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.30dc3ea1","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-p0MUaFiIc5KqFxLiqIo4csibk1EljBXHGxG5sbVXlzcsykCR+sNEKj6ynshJRr6WYF2m/YcE7Vy1fdO05LZwWg==","shasum":"89c522f1d87ccea8cf2ad29f1ee0e4b558934ac9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.30dc3ea1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2RB6kvItOKDnVI6QCSAzOLmVHffYaJ9JM9vFyTxGCQAIgNfO2BAieb3U3lWo5QkiWhJMmciQvHhI2tts2DUD3E24="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.30dc3ea1.tgz_1512735961263_0.818077506031841"},"directories":{}},"0.2.0-alpha.8f9f92a7":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.8f9f92a7","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.8f9f92a7","@crave/farmblocks-text":"^1.2.0-alpha.8f9f92a7","@crave/farmblocks-theme":"^1.5.0-alpha.8f9f92a7","@crave/farmblocks-tooltip":"^0.4.0-alpha.8f9f92a7"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.8f9f92a7","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-3QDsEgJt7jYQfiY3g/ImsLQa80Ppeer/cJ5fPsNHIw63OuRODFqkjajZA7/GV/dmVT1MulAQxuSLPVniuUqv+g==","shasum":"3604a85ce875f3145ff64ae46885868bcd1d44e2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.8f9f92a7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICIaIPtiFv2WL9EDcwb0SvQf/fn/XMP2TpxzZgAefKR3AiEAqXw9sk6qS+a7tloOdX2LTmcxgI65H53B1KlxkbadrhE="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.8f9f92a7.tgz_1512736595277_0.7170178897213191"},"directories":{}},"0.2.0-alpha.8057862e":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.8057862e","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.8057862e","@crave/farmblocks-text":"^1.2.0-alpha.8057862e","@crave/farmblocks-theme":"^1.5.0-alpha.8057862e","@crave/farmblocks-tooltip":"^0.4.0-alpha.8057862e"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.8057862e","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-oInos5671WRk8pCjIzNeIOGyJsDCWX4kP7gJipeI8/bYDQ1YWOclmYiwWZ8pOH15/+EkS7ovoZh/wCr2rppTOQ==","shasum":"16fd929b5c64f3af2a5e485b259774f429275d35","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.8057862e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAeoPZNG6VvHZTgLPPssVEph0oy/Y9FLKEogRHTuRHRdAiA+jpc6JLb87sfEWa/bzXhmtImKdrhyglyWY9p74detxg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.8057862e.tgz_1512737837591_0.16568588162772357"},"directories":{}},"0.2.0-alpha.c22b928c":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.c22b928c","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.c22b928c","@crave/farmblocks-text":"^1.2.0-alpha.c22b928c","@crave/farmblocks-theme":"^1.5.0-alpha.c22b928c","@crave/farmblocks-tooltip":"^0.4.0-alpha.c22b928c"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.c22b928c","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-L4tIUCoUkS0nJWp9Mfc+Sa3MfOkeuSiKrGEX4A0Z2hHV8cOBvKffWU8knFBBMqdlj/P4jOx8yOpIDTnKR9D8gg==","shasum":"fb0f6259d63e9c8589b4279381ef59062ea445a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.c22b928c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCpG0eXRvqD0p5tqdjbCqDD65QeOdz3D0BzPNX/7lxG9wIgOYAwXUZrNqz4BgN4f/ma+WNDfIxB8GdAlHQPdJ0AvvI="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.c22b928c.tgz_1512740216830_0.8382051326334476"},"directories":{}},"0.2.0-alpha.6ac88d9c":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.6ac88d9c","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.6ac88d9c","@crave/farmblocks-text":"^1.2.0-alpha.6ac88d9c","@crave/farmblocks-theme":"^1.5.0-alpha.6ac88d9c","@crave/farmblocks-tooltip":"^0.4.0-alpha.6ac88d9c"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.6ac88d9c","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-buZ6LQlpaSMZrZpRsFKpPw2wutIbWJalU9lSCAsHcV9hxDjwGf+g+HI8qJUvszdb0EPJvD5BET/OZz7AmZT1ow==","shasum":"a917772de36c6633f0ff3a782a291f7e97b7dca1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.6ac88d9c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBgQaWcQVvr/g6GR//OUMmVI1cY0/6YTLxqYJR3xvfOfAiEA+s+AA+CUjByYCYW2dJjtuR0kSjVPNlxvCWJ1xPJOgfw="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.6ac88d9c.tgz_1512741442589_0.4193278851453215"},"directories":{}},"0.2.0-alpha.c2fe7097":{"name":"@crave/farmblocks-input-text","version":"0.2.0-alpha.c2fe7097","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.c2fe7097","@crave/farmblocks-text":"^1.2.0-alpha.c2fe7097","@crave/farmblocks-theme":"^1.5.0-alpha.c2fe7097","@crave/farmblocks-tooltip":"^0.4.0-alpha.c2fe7097"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0-alpha.c2fe7097","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-m5iaIB1Mmtkv3CTPUpKcJ/1vV8YzwE+5eaWdMROp+f7uGMoHE0MNcHIGBQSn2YUJsy57yaZirk8thMQxXXDiiA==","shasum":"9c2d11bc5a625a81d10cd323edc313da14b89a70","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0-alpha.c2fe7097.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCP1U5CKWZuyD2mNMTFdOGMGsfWnNvknxAuaRx44ia7lAIhAKtVKyFvfkrzmj6FtyYah3dfgZHYj405CLsWL4Y06Wmc"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0-alpha.c2fe7097.tgz_1512742176544_0.9058040990494192"},"directories":{}},"0.2.0":{"name":"@crave/farmblocks-input-text","version":"0.2.0","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.2.4","@crave/farmblocks-text":"^1.1.4","@crave/farmblocks-theme":"^1.4.1","@crave/farmblocks-tooltip":"^0.3.3"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.0","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-WJrcaXw8ypqLrR4N6ist+Udh0MSiGoPz7XpDug3NZm13g2UOEo/9HBUt/8a5oKIMBIbESzxkNlVfEu4+kjhiOQ==","shasum":"cb450bebb0c582ef89f614a02e905835a0972fb8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPNxOjFfO47pZTEU7Ver3tlWKWeoM/1fMKmVCHtxD78QIgM3YLNPQ8gzUMJ17H+8EKCM1jkFjwFBJJGyrL3JgisFI="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.0.tgz_1512744777946_0.3566160835325718"},"directories":{}},"0.3.0-alpha.881b4b66":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.881b4b66","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.881b4b66","@crave/farmblocks-text":"^1.2.0-alpha.881b4b66","@crave/farmblocks-theme":"^1.5.0-alpha.881b4b66","@crave/farmblocks-tooltip":"^0.4.0-alpha.881b4b66"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.881b4b66","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-XENYzWJtBHj/U8YtSs3kSaWIG1Mg7lkNXyOgjibSqBdrs8nh4A3ZusSnCou6vKNcRrpDKTgLIaMTWrd6fPnspg==","shasum":"b72e69d123462a35b7fff2908206e76b7f7e7c85","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.881b4b66.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2T1kJQA+8dxD/dKHcHDC9CpZEj2N+cHZ/y4zHpLpDCgIhAMmIqoITh5DSs1pY2yt9U5bLt8wFfrJe/eAPHNzAwIVQ"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.881b4b66.tgz_1512775249284_0.8820517286658287"},"directories":{}},"0.3.0-alpha.f70cbc78":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.f70cbc78","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.f70cbc78","@crave/farmblocks-text":"^1.2.0-alpha.f70cbc78","@crave/farmblocks-theme":"^1.5.0-alpha.f70cbc78","@crave/farmblocks-tooltip":"^0.4.0-alpha.f70cbc78"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.f70cbc78","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Z7JeyTvGz+mMBZLOVuHN49fb/6fAW7qBINWJY5j6fGoBd4qsPtiH1zh0bO2M865QAyO5yQLUNki1aK1IzctzwQ==","shasum":"db9e3f82ee29c020369e2950c3eb9039d52da623","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.f70cbc78.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGj9jdtAjTsJ94kIQvB0OHXjPOT44PyZ30N7OJGli+coAiBuONU4sO64E8CsCO+9bIQetobG5o+4IVdaAq3vra+9Mg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.f70cbc78.tgz_1513010348323_0.6442188611254096"},"directories":{}},"0.3.0-alpha.951cd69c":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.951cd69c","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.951cd69c","@crave/farmblocks-text":"^1.2.0-alpha.951cd69c","@crave/farmblocks-theme":"^1.5.0-alpha.951cd69c","@crave/farmblocks-tooltip":"^0.4.0-alpha.951cd69c"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.951cd69c","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-/FjHhSgtIzWppRtIlLqstlQhDECjZNqBB6uJX4PJgIVW+3QyhWeSpLKwFSjYZb0XGaSM84CiAs3wd4mm98egXw==","shasum":"57a2d4c0f50b1e7cae339a1e557ddf9e86e6cb7e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.951cd69c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3wPGIShZNojweGaE+29ao1H4lROUPKTKv/LE2G9yPRQIgGgAnYslqdBIgHLKrm7re/AqpB0ESp2ZY1fdg0/zKq2Y="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.951cd69c.tgz_1513010811179_0.14901371230371296"},"directories":{}},"0.3.0-alpha.a8021f44":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.a8021f44","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.a8021f44","@crave/farmblocks-text":"^1.2.0-alpha.a8021f44","@crave/farmblocks-theme":"^1.5.0-alpha.a8021f44","@crave/farmblocks-tooltip":"^0.4.0-alpha.a8021f44"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.a8021f44","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-r1Qk4sg3fRpQkMEWfymNXQuejg6XUdsvwkkRv3XUzSRXDmdJgIXAyXOtUeYjEEvUvVALI7DPPR2lsT9yJ47Odg==","shasum":"202d55a9a81a0fbdf0d1549e18622b65143605cd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.a8021f44.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEFdop2geaCTx3Ojz++Z1vX0e7CHxoHBIPv2LHlbLRwNAiEAj8G+Y+dziLY3mnESI/APX9JAZHu0a1kUtekDP99bnvU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.a8021f44.tgz_1513021217345_0.9429802582599223"},"directories":{}},"0.3.0-alpha.97eaabca":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.97eaabca","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.97eaabca","@crave/farmblocks-text":"^1.2.0-alpha.97eaabca","@crave/farmblocks-theme":"^1.5.0-alpha.97eaabca","@crave/farmblocks-tooltip":"^0.4.0-alpha.97eaabca"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.97eaabca","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-4ZR/saK3vRq92mTCr4PQ/cHqHNXghoDUlicp674Zo86kGvahq4twbyya7anA0cgKPbDoFtdbNgizo4x/FjFW3Q==","shasum":"fd42d81cce678a1d036c7ed063ef574ab5c3c805","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.97eaabca.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC5b0NhxJTvcUs4oABZ5vTfpnnN3W4XjrQGCehYfCIMYAiEA5kQX3dNLTd15BTzdiIWSiZ3AzdLfDU5e2SuH7nMU9no="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.97eaabca.tgz_1513021562166_0.3921895120292902"},"directories":{}},"0.3.0-alpha.a9f3f1d2":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.a9f3f1d2","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.a9f3f1d2","@crave/farmblocks-text":"^1.2.0-alpha.a9f3f1d2","@crave/farmblocks-theme":"^1.5.0-alpha.a9f3f1d2","@crave/farmblocks-tooltip":"^0.4.0-alpha.a9f3f1d2"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.a9f3f1d2","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-927KLWuJG7VuOzbp2Ulsj0p/M8e1v26ZZbgqwr9fE1D0FgItu67ckHuXd1N1FeZmUJ4y4ZMahddZdRIuM786jQ==","shasum":"24cadf9ebeaba471152b661ba63127111148f7c9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.a9f3f1d2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFlOY8fgOew6ZR1XiGEKUBuK1V5m5HMBWEg/XFw1AOQLAiEA+50W5AEaJ1XhRf7GrK89ZrpfedoRhH52GkbIPY66iQI="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.a9f3f1d2.tgz_1513021989319_0.415979266166687"},"directories":{}},"0.3.0-alpha.923ccab2":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.923ccab2","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.923ccab2","@crave/farmblocks-text":"^1.2.0-alpha.923ccab2","@crave/farmblocks-theme":"^1.5.0-alpha.923ccab2","@crave/farmblocks-tooltip":"^0.4.0-alpha.923ccab2"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.923ccab2","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-TdKPbiVAO7UUTsK+D47LVlTr6t7RlUutgZ5tbqfiSHaOOKQZ+XbzxlNbsM0xjQG4XgOtpG1nanaPuLnx14lwJw==","shasum":"495f5bd711a697534cf77bcf2ba9859e0ffb1cfe","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.923ccab2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYi+qAnvxeciYp7EHhpXxOjkPh6tt2Rwcb5b4kk3GxHQIgJxzFImAf5ij6Nvs9BBkoenNoKUstxwxUIMhf2MC011Y="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.923ccab2.tgz_1513025844484_0.8467899884562939"},"directories":{}},"0.3.0-alpha.e432ae6b":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.e432ae6b","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.e432ae6b","@crave/farmblocks-text":"^1.2.0-alpha.e432ae6b","@crave/farmblocks-theme":"^1.5.0-alpha.e432ae6b","@crave/farmblocks-tooltip":"^0.4.0-alpha.e432ae6b"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.e432ae6b","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-9C5bWC2nji7TtYSep78GLd6e04BzAlbOqOP7r7vvmaC7rsOWx2uuYhEJlXdYjxQu159ihy9zHwfwAuUvPZmcOw==","shasum":"aeb2dd71457e1280c8bc7fc66dd14dc9a3d18fbb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.e432ae6b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCIcHztbc75JY/7I+afex1mA0AE7sgpI0nD+R1MMbtuIwIgYiJVkRcuQcXgYEQ/Pxv/6cva8/AuQEeaQbizY9CYLjE="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.e432ae6b.tgz_1513031288217_0.10400526924058795"},"directories":{}},"0.3.0-alpha.30e6cef8":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.30e6cef8","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.30e6cef8","@crave/farmblocks-text":"^1.2.0-alpha.30e6cef8","@crave/farmblocks-theme":"^1.5.0-alpha.30e6cef8","@crave/farmblocks-tooltip":"^0.4.0-alpha.30e6cef8"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.30e6cef8","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Ty3wud1PduK0RymYdGNWlaBY7ohMGkdwfkh25ZS+k7fO8Kwu+Rno8G/27cHV6+6TvnYcBHLwhjJG7efDY/23DA==","shasum":"a90900b71901249f45d67db1c1ac29b11140ae3a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.30e6cef8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEZJSnhdDYjRpFVXGMmB1KVaZ4Hxu5lqtDxi0pBLdNWLAiA/U9VnfDMTkEUnQ/lFgzg2xckp/BL1kRcMHks/kYfoQg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.30e6cef8.tgz_1513031323090_0.6117924547288567"},"directories":{}},"0.3.0-alpha.6bba4e6f":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.6bba4e6f","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.6bba4e6f","@crave/farmblocks-text":"^1.2.0-alpha.6bba4e6f","@crave/farmblocks-theme":"^1.5.0-alpha.6bba4e6f","@crave/farmblocks-tooltip":"^0.4.0-alpha.6bba4e6f"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.6bba4e6f","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-lrkCNRhkdgfnZWPVx/uPjR8gBf6rXBfQkPpviY+PUeS2x5AokdgDUaRx7sROm+v2ppEyCOE4X5TAeqFg+e6EVg==","shasum":"1629c471a3603fbfde276e051ca38cb9f9d22037","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.6bba4e6f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDOZ87NgOrWVlgT8Bi/EmQIQM8bgOBeB2Tjpv9KBCrpFAiEArJ5mP/bP1yFFR1EMprBbcUc0I/m9BkPZNoD0VFRrmkU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.6bba4e6f.tgz_1513080412388_0.6748589852359146"},"directories":{}},"0.3.0-alpha.00f56c3c":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.00f56c3c","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.00f56c3c","@crave/farmblocks-text":"^1.2.0-alpha.00f56c3c","@crave/farmblocks-theme":"^1.5.0-alpha.00f56c3c","@crave/farmblocks-tooltip":"^0.4.0-alpha.00f56c3c"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.00f56c3c","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-HbduPNr32HZbWYK8s9aSa9dH6obvvQz9eazvXNEkyhyzohwhdVVwUH7X9CC4OC43nLHgZ3bOYpI+/yvMLpVzyA==","shasum":"01f9cc7b5fc975c50b973d6b52195715097e116c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.00f56c3c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRJUlaqXai8x97YObgfB0lHzTb9q8Bfz66SxzY7TWSjQIgBWqgGQEc4FRGLj9GSqURWJqkYNIHmNs4IvyYMHfqf5E="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.00f56c3c.tgz_1513083659268_0.5779819465242326"},"directories":{}},"0.3.0-alpha.0f00a4c9":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.0f00a4c9","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.0f00a4c9","@crave/farmblocks-text":"^1.2.0-alpha.0f00a4c9","@crave/farmblocks-theme":"^1.5.0-alpha.0f00a4c9","@crave/farmblocks-tooltip":"^0.4.0-alpha.0f00a4c9"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.0f00a4c9","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-6bPHfdlbi24wHoOboBwxOyLL+nuzvPy+KCb6mA02m1w3Ci6Np/neAtkeNN8iJFgsgc7M+WDZdSbLwxy8JO1V9Q==","shasum":"71657c5fb946ada9da99590a60c288521c493fa1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.0f00a4c9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvFeYRajQzHnQBXG3GuQx+MVrIV6GZ/QHLyeKFTl/LRAIhANGSJbW4fftUjxiCFP8oOKXciHApPEJtd7WJTtT+V7hx"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.0f00a4c9.tgz_1513249399160_0.4301059173885733"},"directories":{}},"0.3.0-alpha.c6b0f686":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.c6b0f686","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.c6b0f686","@crave/farmblocks-text":"^1.2.0-alpha.c6b0f686","@crave/farmblocks-theme":"^1.5.0-alpha.c6b0f686","@crave/farmblocks-tooltip":"^0.4.0-alpha.c6b0f686"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.c6b0f686","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-bUbHETeLKmfCdSFSXz+8SvA9cvCD1K1tb2jmX3rxc8SRS7y2hQokMGQjvBwWLOZK2CYhE6cITqk6+4hjCXJYyQ==","shasum":"1004d15d7fa372b4728285afb68def34a078c9b3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.c6b0f686.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDG0+9+Gyh3BsXijA6q4vdnwTYoH8xoEcx1mzKLAokAxAiEAlQBaijWs+X8X6lXBc01aUc4gYM4XKDM8NSFxNwoXvAs="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.c6b0f686.tgz_1513250498376_0.9591026830021292"},"directories":{}},"0.3.0-alpha.e1ed1a02":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.e1ed1a02","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.e1ed1a02","@crave/farmblocks-text":"^1.2.0-alpha.e1ed1a02","@crave/farmblocks-theme":"^1.5.0-alpha.e1ed1a02","@crave/farmblocks-tooltip":"^0.4.0-alpha.e1ed1a02"},"devDependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.2.0-alpha.c6b0f686"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.e1ed1a02","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-N+ee7TsWDQOV3mQkzlJkv7VvX42nlR3oS0B0A7aTUcev7gaat4SAgwL6/ox8jf28CCgb6/02nCSYWSUoGsY0NQ==","shasum":"3a3f22894ad638b9bda9227f161e068d2fc854bc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.e1ed1a02.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICUsoVYARqPfpVpI5j10YZz2V+kR9V/bEYhXIJAAIj2QAiEAjiza0JB9zpSbuMlqvpjLRBkfiKPocKvwoaESfb8oliM="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.e1ed1a02.tgz_1513251694921_0.52353584789671"},"directories":{}},"0.3.0-alpha.427db2f9":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.427db2f9","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.427db2f9","@crave/farmblocks-text":"^1.2.0-alpha.427db2f9","@crave/farmblocks-theme":"^1.5.0-alpha.427db2f9","@crave/farmblocks-tooltip":"^0.4.0-alpha.427db2f9"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.427db2f9","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-bzOaCihHxrxmHjR7QpOakuCBjPqORTS0vqYltyNp8tJROe44/cmJrfisZjeeQF3FD7PaFV4VRJvwB6mgA0jZYw==","shasum":"40ccb9e56e4f8e0a1be670351aaecfc981df077b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.427db2f9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB0u5PbaHhfhzawL8bgx8R8X6zMS430msoYuIhd13YzXAiEAp4Q6aSvRs4e1/E478eTqgeUvXXw/UFRTOKZnu3alFPo="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.427db2f9.tgz_1513273329690_0.8772389376536012"},"directories":{}},"0.3.0-alpha.da10c733":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.da10c733","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.da10c733","@crave/farmblocks-text":"^1.2.0-alpha.da10c733","@crave/farmblocks-theme":"^1.5.0-alpha.da10c733","@crave/farmblocks-tooltip":"^0.4.0-alpha.da10c733"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.da10c733","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-WMtAuYxiZTuW1kC97lrkOwcSiKsF5WHinEeRCTpH5cotMSF8bdp/G8T/xW+dFunXN0nV8ZrNDqpckMawMzLOtA==","shasum":"6dcf29c2fbb712864eda82b4e51f507356029782","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.da10c733.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFiSCNHDG6+D7hcZcQQ0wDsDVMdZfATozWlfVz8gLZ3GAiEAtVFygkVEBntlEeNwxSCrUUvSDTNAC/CFfRMm2YSU5oU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.da10c733.tgz_1513300214956_0.4082715839613229"},"directories":{}},"0.3.0-alpha.1eee5381":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.1eee5381","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.1eee5381","@crave/farmblocks-text":"^1.2.0-alpha.1eee5381","@crave/farmblocks-theme":"^1.5.0-alpha.1eee5381","@crave/farmblocks-tooltip":"^0.4.0-alpha.1eee5381"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.1eee5381","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Ui0TbEZ6wkrwx3SJjG2ABLh91jsF3wrtckRLZRG+BuJukSlN6lmXaADywSBeM3DvZqls31tlRrKyUtCkeOF/tQ==","shasum":"968de79635f0af5cef1d8033a427262ef341f769","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.1eee5381.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIENedpethgMPrUe3qa6GeFPDIR802G2oq7INDxRjFjOAAiEAxxq0wVZfuLpK/knM+bAkgIzPWqHi+ikCvp3ZfKvtUY0="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.1eee5381.tgz_1513304693725_0.021739316172897816"},"directories":{}},"0.3.0-alpha.7c914eb5":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.7c914eb5","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.7c914eb5","@crave/farmblocks-text":"^1.2.0-alpha.7c914eb5","@crave/farmblocks-theme":"^1.5.0-alpha.7c914eb5","@crave/farmblocks-tooltip":"^0.4.0-alpha.7c914eb5"},"devDependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.2.0-alpha.1eee5381"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.7c914eb5","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ThdN/0AMuqkkZR8kgCkP0Br5E7UFx9BVz/PZJjcszYCp+S0JaBlbP6mqCSvzl7BNo1OusjQrWeDd06Ub4SEc8A==","shasum":"489a7da895259ff81680ff6032f3c1bfa06f3595","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.7c914eb5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyR+WSR47qta0CDz2F+EOXREjNwgmCRt9XSsfdJZ8QFQIhAMjD9o/vGefTEwVZpxr88nrm5oy3RDZQgRThj99IERyR"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.7c914eb5.tgz_1513308982922_0.6368503700941801"},"directories":{}},"0.3.0-alpha.2d809d6c":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.2d809d6c","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.2d809d6c","@crave/farmblocks-text":"^1.2.0-alpha.2d809d6c","@crave/farmblocks-theme":"^1.5.0-alpha.2d809d6c","@crave/farmblocks-tooltip":"^0.4.0-alpha.2d809d6c"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.2d809d6c","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-mqvzx7u4bTI4H+f3ZwF4icVdU5eLzHORgln2ql1NQW6XILfDWepGJc/qYY6Z+RC8mGUwc7Z4odurIO1gD5eJtw==","shasum":"ec3027ccb757062b7fe15eb2061e311eb94bbf9d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.2d809d6c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzMcLsYtAMA9beClMj/1sY1hkL4CZHf8ufsfM6HUu4GgIgTaB4CF0g5xyJa8f/MqPiyAvs1eJ616PQ4Etm/MSoiWQ="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.2d809d6c.tgz_1513460320156_0.1909499561879784"},"directories":{}},"0.3.0-alpha.685324e8":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.685324e8","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.685324e8","@crave/farmblocks-text":"^1.2.0-alpha.685324e8","@crave/farmblocks-theme":"^1.5.0-alpha.685324e8","@crave/farmblocks-tooltip":"^0.4.0-alpha.685324e8"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.685324e8","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-LjMsBJ1GJZ8iF7NWtLMmIlZUCJEr9F9ducibDY7520i4ZQa2kLJvnEGL6DPCAHgpw+FLEGLwH3GUawW6XaDoZA==","shasum":"08da576b1c22bdddabc01cc196fc8f7e1e3a6a47","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.685324e8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHSHCNyD88xAdTr9BG3QLzTuh/caWuc61MQL0yu8WYygIgRS9I5EXgLWXZJZuOx6pZjgpXlUrOLwhOgsRl3FuTnsw="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.685324e8.tgz_1513460333146_0.6025138690602034"},"directories":{}},"0.3.0-alpha.7b6a087e":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.7b6a087e","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.7b6a087e","@crave/farmblocks-text":"^1.2.0-alpha.7b6a087e","@crave/farmblocks-theme":"^1.5.0-alpha.7b6a087e","@crave/farmblocks-tooltip":"^0.4.0-alpha.7b6a087e"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.7b6a087e","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-vdbJXh9OhWEcINaoAxaj6Ob7S9SNT3dqIXFvLOT/wD2ZL4tJ2+q0DFw3nHM0ipPi7XBDNu7VsmfOyzacB8JGaA==","shasum":"25a46a3e2ff142f19dcacc67d1bccf8b1e94f24e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.7b6a087e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCG7NVK5BmjwboHLdgUPqnk7bsrEtQpH/t4FHeypqAh9wIhAKYOzuC3Lb03pJgEEuEBuANf0E5qF8/jevghNiMRQEtK"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.7b6a087e.tgz_1513497769205_0.5126612237654626"},"directories":{}},"0.3.0-alpha.8718775a":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.8718775a","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.8718775a","@crave/farmblocks-text":"^1.2.0-alpha.8718775a","@crave/farmblocks-theme":"^1.5.0-alpha.8718775a","@crave/farmblocks-tooltip":"^0.4.0-alpha.8718775a"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.8718775a","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-FIHNql0PEuyPYbuADAu2xDi/+wH66NJYOmWp0jhMD6wECq10Q4teuWaS+QWlWHEU68VZUQjw112znJjeWqL7Ew==","shasum":"68b0381e3c9f149b509cbf8f5d8c7f56159186d2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.8718775a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGNKOze9Agpyhtlm17KvwpYhOdtwQLMAkad7oayIgHJ1AiEAxT3hdD5U/cGaphRfo1HxQQ7wdrrE8P2uZo6ofrd/PO4="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.8718775a.tgz_1513708182915_0.45099142473191023"},"directories":{}},"0.3.0-alpha.bb92ca41":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.bb92ca41","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.bb92ca41","@crave/farmblocks-text":"^1.2.0-alpha.bb92ca41","@crave/farmblocks-theme":"^1.5.0-alpha.bb92ca41","@crave/farmblocks-tooltip":"^0.4.0-alpha.bb92ca41"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.bb92ca41","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-cqOdrK3ilrNHxxVJwTsxa+M2HIga0J72XngaqmFx3pLCNqeUQUpCxPN35Z7vrLzDgGhGuh6zvQ6A/OKPITgkpw==","shasum":"d8e921d3fecaebafd1c35c5e93b29ac1b9a2231b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.bb92ca41.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCu9MOnR3j539hc2zzcmc31u7tojPWcD/ixkm0AvZUsbwIgSrB11pvqPpJNe65i3sAXRI+aMERYnWHvaA5yuiCtjnU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.bb92ca41.tgz_1513713264825_0.6836785024497658"},"directories":{}},"0.3.0-alpha.a8873d97":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.a8873d97","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.a8873d97","@crave/farmblocks-text":"^1.2.0-alpha.a8873d97","@crave/farmblocks-theme":"^1.5.0-alpha.a8873d97","@crave/farmblocks-tooltip":"^0.4.0-alpha.a8873d97"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.a8873d97","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-V6lw7h8YskbVKoK8tFm5541hmwT7BIQvEEXBDAo38VS6Ur1WHB3hCuLEURAQEGMPs4Z1l1qYDkvCZfGPaQHaNg==","shasum":"106ef771f103d60273ccb9d8e0ecfbb20acfe87b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.a8873d97.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF5WDbd7kYKtUCZ4auryY5LdYvfw8+YFso0i6kwMPj7XAiAkMbHeO4/3FwrqIG15xJqbncq0Jz56wNel2j2cIW6OIw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.a8873d97.tgz_1513715308827_0.3947920927312225"},"directories":{}},"0.3.0-alpha.b64b8fec":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.b64b8fec","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.b64b8fec","@crave/farmblocks-text":"^1.2.0-alpha.b64b8fec","@crave/farmblocks-theme":"^1.5.0-alpha.b64b8fec","@crave/farmblocks-tooltip":"^0.4.0-alpha.b64b8fec"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.b64b8fec","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-2iSIABoprbNi1oBru/I2NmKdEQepypGDyqErRh+kXHLmIWky5IkrjTcumFP1yUbEQvd5syS058qq1S+CHcCl+Q==","shasum":"9388a4035e217999de5e2e8bb82684f20eb3a41a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.b64b8fec.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBA56fbhslzYZ+qeXBWv/0vJW2bNWpaZOdcoWvIpzEHHAiEAuIH+AlTsvqeh36gWQb8HJ8bImLJFm3dijFoHZ1Qqm2Q="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.b64b8fec.tgz_1513778150319_0.49627935397438705"},"directories":{}},"0.3.0-alpha.ca51be94":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.ca51be94","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.ca51be94","@crave/farmblocks-text":"^1.2.0-alpha.ca51be94","@crave/farmblocks-theme":"^1.5.0-alpha.ca51be94","@crave/farmblocks-tooltip":"^0.4.0-alpha.ca51be94"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.ca51be94","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ILa9EGAZ5DY7kyB3SP+6LATLBnKIQAvTIGe81IKlNgGxh1veJJgF4CCPa49RqxE+1EBm/AkAthpO38wk+iWfTw==","shasum":"aeba742f0b7a95ee8c04f1ea96954c503e1f2741","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.ca51be94.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAZwqsIyT2Kx2OZ0OBBIEdkFD8ZEZLxONdLKQNUyDpHdAiEAlP/BJWOATOaJ4hSPzIF+fAYfRLMhYrmo2fSxo3fQZXY="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.ca51be94.tgz_1513783610547_0.25909746112301946"},"directories":{}},"0.3.0-alpha.0ce36e8a":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.0ce36e8a","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.0ce36e8a","@crave/farmblocks-text":"^1.2.0-alpha.0ce36e8a","@crave/farmblocks-theme":"^1.5.0-alpha.0ce36e8a","@crave/farmblocks-tooltip":"^0.4.0-alpha.0ce36e8a"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.0ce36e8a","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-HqGwlB0t4MuTWwird4uNgo8FE96xO2ux4xFbBY/2YmAxQs6MJN7Yv5V9Wh5P0hBE89tm/UKBFKwOZHCwUPvj/w==","shasum":"029dd4b059a6be8b77dfca49523cf931ba379150","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.0ce36e8a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDyHdcqTXSXhlL8pDqoK8a0jZDmKRpeLwAxJtneo5hLbAiBAzcv5sAs0vqTibsV5+WXLtW7oFAdcMIOo7VXAkv2lJw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.0ce36e8a.tgz_1513784888474_0.8122558880131692"},"directories":{}},"0.3.0-alpha.49b129d4":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.49b129d4","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.49b129d4","@crave/farmblocks-text":"^1.2.0-alpha.49b129d4","@crave/farmblocks-theme":"^1.5.0-alpha.49b129d4","@crave/farmblocks-tooltip":"^0.4.0-alpha.49b129d4"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.49b129d4","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-GcOacpfjh5BBIaxNpRwfJmowdcFvHOWx7HnK4gxveT9WKBArreUM+IexC42SZyElm8r/U6j9Ny1e5ZR/Ag3IIw==","shasum":"35a78b12a978bfd5de3ef09ce8a12d2fa81ca35a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.49b129d4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEqmagocLHY1csHpPxQel9jQMmOJwx+NC9DLyABaWoq3AiAJ+2cJeUMjNu4shsVYP+pihwe9xfn+JVfLwKC31eINDg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.49b129d4.tgz_1513792357475_0.8660133201628923"},"directories":{}},"0.3.0-alpha.6da64de2":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.6da64de2","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.6da64de2","@crave/farmblocks-text":"^1.2.0-alpha.6da64de2","@crave/farmblocks-theme":"^1.5.0-alpha.6da64de2","@crave/farmblocks-tooltip":"^0.4.0-alpha.6da64de2"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.6da64de2","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-JClfijY0RQFcXOMu9iN+XjQNkHFiBFsF70AqclZoMjhFpdRn+Pehx5IOdL8mgaBTThv4qa3WZEBOaVWscCWw2w==","shasum":"593ad3722cf5551680b357e942f89a24922179bd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.6da64de2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD83kqM8NaoFGgh1kANlZeOLC28Ec5BJcVnTQXpCmWfhAIhAI2zdCa63IX8bbZh1M2gWU9obsn+G5LcbJSBSTy32u0Y"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.6da64de2.tgz_1513797296405_0.8386411017272621"},"directories":{}},"0.3.0-alpha.ca90896c":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.ca90896c","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.ca90896c","@crave/farmblocks-text":"^1.2.0-alpha.ca90896c","@crave/farmblocks-theme":"^1.5.0-alpha.ca90896c","@crave/farmblocks-tooltip":"^0.4.0-alpha.ca90896c"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.ca90896c","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-QgW6pUtd/+P0GwsnWRtYgM+gOpNy6FJY4z8ipDquGDsjRHYXwsFFoPZJHVefKUciiXkt9pY95qv3HqcGxQKq3A==","shasum":"3b461d4cd7453da207a02a84d93d276f041d72d5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.ca90896c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA+t2xnisflk4W2MkDraGqLqUa3eyQYlZtAu2f2wxl35AiEAjkGpNfJf7yLXJzvZBQOMTPHlwtnH3ix7shWfVxzfNrk="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.ca90896c.tgz_1513855572797_0.8215730816591531"},"directories":{}},"0.3.0-alpha.92d991c4":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.92d991c4","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.92d991c4","@crave/farmblocks-text":"^1.2.0-alpha.92d991c4","@crave/farmblocks-theme":"^1.5.0-alpha.92d991c4","@crave/farmblocks-tooltip":"^0.4.0-alpha.92d991c4"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.92d991c4","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-+Q0AsHLAU+dLSa3fgludzw8ojDm2jmPNJAJFtmtr38UrP+2L1AnSJtzz+qEdnPxuszd1AZIGmYiyIf4/vb7lAw==","shasum":"055a13148f5b5bf09288b317b3b623272eda501e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.92d991c4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYjyKbSxRXulS5S6JyoMr7nrIOmRkVL1/Fb8q/g1iwTgIhAOENW50eyGJ2rtKJqtFSGc6GWVQCGTclNJFlynXefqO7"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.92d991c4.tgz_1513869673791_0.33148514898493886"},"directories":{}},"0.3.0-alpha.b12db607":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.b12db607","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.b12db607","@crave/farmblocks-text":"^1.2.0-alpha.b12db607","@crave/farmblocks-theme":"^1.5.0-alpha.b12db607","@crave/farmblocks-tooltip":"^0.4.0-alpha.b12db607"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.b12db607","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-/wuQbIUxX0BXfvJCJ5aJVqLgetkc+QPyfHNsbFokgbiYr0GeT761vqPADJqonEkDM4c/PqQssbM0WzF0eBDBAg==","shasum":"e7143038b06df45a27b32f1c49480c59e638382d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.b12db607.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCI1FNcviWmRDXAvbPkwfkwgV6lY2M+xLKzoGcvqb1OAIhAIMHgnwuUSYe0oRLMaTxDuAOHyT3TzTnRio0C7iJKHfy"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.b12db607.tgz_1514301109379_0.9497618919704109"},"directories":{}},"0.3.0-alpha.4cca5443":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.4cca5443","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.4cca5443","@crave/farmblocks-text":"^1.2.0-alpha.4cca5443","@crave/farmblocks-theme":"^1.5.0-alpha.4cca5443","@crave/farmblocks-tooltip":"^0.4.0-alpha.4cca5443"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.4cca5443","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-UxAxatJBc8f3B9PmQ2MgQuZ3p8CNJlHJaddOOB34vfTJLDeHcsb4qlALAmxL4I8R7b+CPgF6Z3Kv+SAkk0eR2Q==","shasum":"006cd9b1045034f8983cd2e77b14ad68bf1a5268","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.4cca5443.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF76/scKPEaxH/4pbozjCxTYypofkxR50L1DAvIE2JxNAiAITnSKwFA7eHptqYp97MYpks/zfCnInwPk6hmhUMSrjg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.4cca5443.tgz_1514311508695_0.02979876776225865"},"directories":{}},"0.3.0-alpha.c30d6699":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.c30d6699","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.c30d6699","@crave/farmblocks-text":"^1.2.0-alpha.c30d6699","@crave/farmblocks-theme":"^1.5.0-alpha.c30d6699","@crave/farmblocks-tooltip":"^0.4.0-alpha.c30d6699"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.c30d6699","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-5//UWogola704Mg0TuXWv+L8wf1ILBY8Jff/xbRd9Z5lsk021bXxR7JhaYvLlf2yhSiAM0BrtRlKgAoIJT6FKA==","shasum":"acb28ebf24e8c07600c4be2cbb6435daee3c7117","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.c30d6699.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDo6As14FAupEISfjuz72k1axKzvUFKFp3H/3gYwO0C1AiAZvKXwYNtIzmu2/XOaxO065c8fXwfxER/4I/PMy42HeA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.c30d6699.tgz_1514311698588_0.317664303118363"},"directories":{}},"0.3.0-alpha.d436acf7":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.d436acf7","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.d436acf7","@crave/farmblocks-text":"^1.2.0-alpha.d436acf7","@crave/farmblocks-theme":"^1.5.0-alpha.d436acf7","@crave/farmblocks-tooltip":"^0.4.0-alpha.d436acf7"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.d436acf7","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Shi/s7TV/g7P5zNBf4X5OLQLH4he8WMJd6Wb3TWn93INrh38CGJ/LrCNW/k9zaE0d4Hh0D6L1oHKKqED4O4ZhQ==","shasum":"76d99fc2922e80e441863601b6b63b34f3a91ae6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.d436acf7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDQILfftm/uDBcC9bqq6psz6UEkq3He9RKYQJuYTWaEsgIgCjBHKyAx4u7EkHMuiUH5e0gySVk9fV9Zl6WAZ/GxOh4="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.d436acf7.tgz_1514312681127_0.957924738060683"},"directories":{}},"0.3.0-alpha.842e0ad8":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.842e0ad8","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.842e0ad8","@crave/farmblocks-text":"^1.2.0-alpha.842e0ad8","@crave/farmblocks-theme":"^1.5.0-alpha.842e0ad8","@crave/farmblocks-tooltip":"^0.4.0-alpha.842e0ad8"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.842e0ad8","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-JxBID42rZQcIqdFLxDc678faZ6SJW67IC8GOVL/VKRJC4OTMOeACmXaX0Zp60Qf4VG4OLg4PGAO8j/bRHJ9CYg==","shasum":"79ad50cf80dc14d617d3ab9ef9e8f1d777f50b49","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.842e0ad8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXvi6gitxSdTYvIZVtYQNTugTc3AzujpPcB/5aGitXKQIga/d5Ttsog193IPidx6OsohjcqGqfpYlldOw9zIY5Kro="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.842e0ad8.tgz_1514316295393_0.1509849347639829"},"directories":{}},"0.3.0-alpha.19661fc9":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.19661fc9","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.19661fc9","@crave/farmblocks-text":"^1.2.0-alpha.19661fc9","@crave/farmblocks-theme":"^1.5.0-alpha.19661fc9","@crave/farmblocks-tooltip":"^0.4.0-alpha.19661fc9"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.19661fc9","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-JKHq2ggAf5MlDWSLZ3tZNYvyqprwu0fsi06Qk0kFmrkN8VAKKPBDvWGjQsiacRNi7yWXEVCaMnNu29Vbk6yIzw==","shasum":"fc8b7199d0ea891d6ec4eea6d209607c15d21394","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.19661fc9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICYs6XNnJczn9q73IyMjDcKx66eEQaAGgdQCWaArQ9WcAiAmAk3tuJw+O94gmwkgxH5V825aPK2Lfs9XC+dk4VOdnA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.19661fc9.tgz_1514375536608_0.016396946739405394"},"directories":{}},"0.3.0-alpha.e9da9291":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.e9da9291","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.e9da9291","@crave/farmblocks-text":"^1.2.0-alpha.e9da9291","@crave/farmblocks-theme":"^1.5.0-alpha.e9da9291","@crave/farmblocks-tooltip":"^0.4.0-alpha.e9da9291"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.e9da9291","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-fE+9uuBI+LIk7ofYsH5AA9kXjHNq4Vi2pwG7VgFpwbdLCZ0oQmbx0/QdY9HVMkJeUM11lGZq4DiVBhR2/0nuQQ==","shasum":"6c0981b266e68117de2d9c029d1c5ea9d2491d2b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.e9da9291.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAIf01sigSXQ+8bIXX7QwO8nNpTPQWiQQnPsERt65WlnAiAVQLCuv+bq3MEfJ2glh+J/iZnb1PDoJcjIiKwUwfRWHw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.e9da9291.tgz_1514480934713_0.8764598867855966"},"directories":{}},"0.3.0-alpha.1aa99425":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.1aa99425","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.1aa99425","@crave/farmblocks-text":"^1.2.0-alpha.1aa99425","@crave/farmblocks-theme":"^1.5.0-alpha.1aa99425","@crave/farmblocks-tooltip":"^0.4.0-alpha.1aa99425"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.1aa99425","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-5+xRSs3U2gvsE8Bpwf99Of5Eby++xvcodtpPYn2yHeTbW22KuZq8Zn9MMEEcNcntTVv6hkORl4Ibrd/6FLWNkg==","shasum":"b2eabc91519ace4ceb7a2ac9a33ee9f1cf5c90df","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.1aa99425.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7ZbuYQLI9QyIIuWpigZfoyrVMDSgfj7y0nZbGspLWCQIhAKzQd7qYVg978PHazLlEJXhUIf/KZrASnMJrYWZNj4sN"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.1aa99425.tgz_1514496787396_0.6637461443897337"},"directories":{}},"0.3.0-alpha.0a1117d5":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.0a1117d5","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.0a1117d5","@crave/farmblocks-text":"^1.2.0-alpha.0a1117d5","@crave/farmblocks-theme":"^1.5.0-alpha.0a1117d5","@crave/farmblocks-tooltip":"^0.4.0-alpha.0a1117d5"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.0a1117d5","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-oc1T2VSnah0iONY4fZdBPUOawbb/VnjAy9a2KnHHvgjaL2/ezD5pTYpCUFsoAciRnAvEowMHxxM9qhguNB9obA==","shasum":"6c2b834d1d665f015a9db76fce933d1f4c529780","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.0a1117d5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDASZR4FGVihU7J6ctSosxlpVdcp7leX9Xxtm2Ln1AqmAiAMXN3fWGRSReMH/UGYeEw5N/GlcwPzjRTdSo42/csCnA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.0a1117d5.tgz_1514909322082_0.3570128702558577"},"directories":{}},"0.3.0-alpha.086503bd":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.086503bd","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.086503bd","@crave/farmblocks-text":"^1.2.0-alpha.086503bd","@crave/farmblocks-theme":"^1.5.0-alpha.086503bd","@crave/farmblocks-tooltip":"^0.4.0-alpha.086503bd"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.086503bd","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ddMIrR0NvTln04kyrLv0pFSfoNo7PtXCQri1/0diBpAQr0oeO+QcRahbgUEDPIPR2g7bdpxAiKmp4A3evtw9Mw==","shasum":"49cc668dffe0285ade6ac3b73ee4334c9008af80","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.086503bd.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDbHiMaD2uViKIcEDL7jgsxsMvu7XC8KXuBnKrTPSyxAAIhALedw8l3VvPzTtXSwM1DZELJSZusZN6kINc9E0VcWCWZ"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.086503bd.tgz_1514909822086_0.4056572529952973"},"directories":{}},"0.3.0-alpha.ceb78805":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.ceb78805","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.ceb78805","@crave/farmblocks-text":"^1.2.0-alpha.ceb78805","@crave/farmblocks-theme":"^1.5.0-alpha.ceb78805","@crave/farmblocks-tooltip":"^0.4.0-alpha.ceb78805"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.ceb78805","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-qIi/PhE2aDHN/oeyNZIxRL/YoeHqGmE69UpU15CIqvVLSy7cOPeCUbGRN2naKKTRtSdgxn9n7oVcz1L5idXgdw==","shasum":"194ae52c7b8902d0060c89496c434b70eba9b91b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.ceb78805.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqCSX4B6fyuZS9flZ+L8DXxAFP1hjE246rcR3zD6XV5AIhALIfZTwrDRArDt4dm7nqPV8N/1//wXs2jdzaZPKzWTqN"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.ceb78805.tgz_1514910366947_0.562291445909068"},"directories":{}},"0.3.0-alpha.7d62b5be":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.7d62b5be","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.7d62b5be","@crave/farmblocks-text":"^1.2.0-alpha.7d62b5be","@crave/farmblocks-theme":"^1.5.0-alpha.7d62b5be","@crave/farmblocks-tooltip":"^0.4.0-alpha.7d62b5be"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.7d62b5be","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-O466MGAHCSyDUvTXbCCDD1kvepF05/GXpr3cOKwixSIjSOl8BMikieIqmx8SLZnRdfYIgpLZbtuV8x/8Czg4XQ==","shasum":"53061502c9d37bfa550ee140c167a294125364b4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.7d62b5be.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGctbTx50VsJAZmT6fdCeV+EPSICXfs8bWOA/4/UOszwAiA3v0mcE+0pqfgmuffbl88J2lhOlvjApFPlXwa2+Xlz1A=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.7d62b5be.tgz_1514913387018_0.36923319939523935"},"directories":{}},"0.3.0-alpha.6064f66f":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.6064f66f","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.6064f66f","@crave/farmblocks-text":"^1.2.0-alpha.6064f66f","@crave/farmblocks-theme":"^1.5.0-alpha.6064f66f","@crave/farmblocks-tooltip":"^0.4.0-alpha.6064f66f"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.6064f66f","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-znboA6xUfAzv765N56G9Rjf/66KHdeuNGCUR2msXNR+wNbwW5LImFzxvKJQ4EZSoGdoy62lGgfTAk9llHl1xwQ==","shasum":"8ca83785a785d440931641ff5cb7659dc179545e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.6064f66f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAQDNXt9/D3U5/4U2taTmR+nvNEwdnopsGDO1tqtDuyFAiByaPjvbodCnNnDG0wupUYxT1B1HLWXVjWrUDewEDK02Q=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.6064f66f.tgz_1514915261812_0.2485572665464133"},"directories":{}},"0.3.0-alpha.c88389ac":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.c88389ac","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.c88389ac","@crave/farmblocks-text":"^1.2.0-alpha.c88389ac","@crave/farmblocks-theme":"^1.5.0-alpha.c88389ac","@crave/farmblocks-tooltip":"^0.4.0-alpha.c88389ac"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.c88389ac","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-LLc0IKrEiTXNg5fS27pSWq0kXxthI96raZyiQrv3xQ72S9gzZPxKNa3axOwX6vC6P5W6nbAutzfmF8uFRfsuAg==","shasum":"46d57f0095fa080d2c9e7ea669cc5d84a044634d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.c88389ac.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1Z5orhlv2BovOfEDo7JBxnNSZyXHpbMoGoEYoZokmdQIhAM7bkOgn0jWeE7GcI6texa3Xk8N/yXtwpLG7u/zGofr9"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.c88389ac.tgz_1514916887182_0.5547418699134141"},"directories":{}},"0.3.0-alpha.8f6fa6c2":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.8f6fa6c2","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.8f6fa6c2","@crave/farmblocks-text":"^1.2.0-alpha.8f6fa6c2","@crave/farmblocks-theme":"^1.5.0-alpha.8f6fa6c2","@crave/farmblocks-tooltip":"^0.4.0-alpha.8f6fa6c2"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.8f6fa6c2","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-MpKPyLV+QhMtI76Ex5hrdevjX2mRnXEoL5OSkbv/0zNCivCgPkJ6qRV/BnX1SEutdklep9wEohQ3Kjp3LE79Xg==","shasum":"22d6d090aeecb448f0da47c1f30094f7256a4e41","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.8f6fa6c2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEDgyVBBwdX6dUnHvtyYrHD4RZQ36xvNkucau0C1huGlAiANNDzyTwTZHAecpVPK6IiyTFiUwBdQo2U1mPe4fgmjow=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.8f6fa6c2.tgz_1514917269784_0.2462480366230011"},"directories":{}},"0.3.0-alpha.f57a4ea1":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.f57a4ea1","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.f57a4ea1","@crave/farmblocks-text":"^1.2.0-alpha.f57a4ea1","@crave/farmblocks-theme":"^1.5.0-alpha.f57a4ea1","@crave/farmblocks-tooltip":"^0.4.0-alpha.f57a4ea1"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.f57a4ea1","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ONrqBbeuQGHc3GEN7t4AbIUusvPVPscnig3N5M808DMpIJ0LrTO88IaDMCKHcbPJNTXkKrvNo5K1or68GlwQqg==","shasum":"381c80f88f351c2d2e04618178e7c7f9f4d19fc9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.f57a4ea1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD075Rgpyd/BzDjuQNbAYKg2TYn6gck4gbGFEbnEzoHPwIhAI5jYPxvzczDuXqLhBlPF6pHBW+T9cjApmLDfwvO9tZf"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.f57a4ea1.tgz_1514924276148_0.689258981263265"},"directories":{}},"0.3.0-alpha.ac1a9d7f":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.ac1a9d7f","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0-alpha.ac1a9d7f","@crave/farmblocks-text":"^1.2.0-alpha.ac1a9d7f","@crave/farmblocks-theme":"^1.5.0-alpha.ac1a9d7f","@crave/farmblocks-tooltip":"^0.4.0-alpha.ac1a9d7f"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.ac1a9d7f","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-OmBEFrPNx1CP2lTkosTVqzVZF6fglvzzdZX6LbV39Vi+C7UYuIabMiIvZt4pOC+YplGkr1LZ3kjloEVrHeB6jg==","shasum":"771665acbd3ec1765fcf3e1e0ad7dfa527d0a711","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.ac1a9d7f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCNWXsJmJv4Jc0vPZW26S4Mjc8WHvw1OmoHvJdhBhdO/gIhAMvCiiCivS7Vho8Zhai/Nzotqmwlx4AFX4p3GhNudIsu"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.ac1a9d7f.tgz_1514978572130_0.4334932374767959"},"directories":{}},"0.2.1":{"name":"@crave/farmblocks-input-text","version":"0.2.1","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.0","@crave/farmblocks-text":"^1.1.4","@crave/farmblocks-theme":"^1.4.1","@crave/farmblocks-tooltip":"^0.3.3"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-poV1pUgz6iqW0vmLE3qlSexs6iG2GNu9w05epMCmh06ktS84lnfbVxe/cJEbBePxqpzkygeP2XQL0TkihT4Fag==","shasum":"43eaa586a68eb69158be264ac1ec6c09dc0d2e60","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDaK4iPwy04GAeAXfWOhqIfglvYp+kTcaMChPTMmyiswgIgIrfbPb4fWwp6yrQBm0weds/9LmE61p/1iYFsAnyY0gc="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.1.tgz_1514979517809_0.7749906396493316"},"directories":{}},"0.3.0-alpha.e2690815":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.e2690815","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.e2690815","@crave/farmblocks-text":"^1.2.0-alpha.e2690815","@crave/farmblocks-theme":"^1.5.0-alpha.e2690815","@crave/farmblocks-tooltip":"^0.4.0-alpha.e2690815"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.e2690815","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-oHEWvNzCia8FkW/UHAaUhbrrbzcVOxWqLkVdE1Lx40eIl1XWLK0Eoj/GzspBe8TDjVmzuUpzGB7uE7dviOO3Qw==","shasum":"24fcb979f3fa3c24c1592bc962b6045a2d893dc4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.e2690815.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCB8/VbxFnH9gCwt1eC41jJvPHb8jpokUuFSQe05w7BDgIgRWVn/kqEz9dKz8LB/OUxlMFySFDaVwO0RhTyyIx/1ao="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.e2690815.tgz_1514983470208_0.811607884708792"},"directories":{}},"0.3.0-alpha.bd8734c8":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.bd8734c8","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.bd8734c8","@crave/farmblocks-text":"^1.2.0-alpha.bd8734c8","@crave/farmblocks-theme":"^1.5.0-alpha.bd8734c8","@crave/farmblocks-tooltip":"^0.4.0-alpha.bd8734c8"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.bd8734c8","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-5b58ceUErVAREgVxnjKNpp84dVMzK/LRIGTW1x6n8CHnQDw+zyIWmsfZ5O7HAt5AtYb3FVxWPcJ//L2SDCsK6A==","shasum":"103fefac67c47ef17bd72fdcab78afbb85da2f69","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.bd8734c8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA/uNuMPbq6Y7tAuT4uOUYc0CYbPFvU9PTfZAVtZAJGeAiBDAAqFPCmCJsSq+VTkS0KKTlvXWL0i2OMjEdIJBbPsdg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.bd8734c8.tgz_1515006412994_0.09022892802022398"},"directories":{}},"0.2.2":{"name":"@crave/farmblocks-input-text","version":"0.2.2","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.3.1","@crave/farmblocks-text":"^1.1.4","@crave/farmblocks-theme":"^1.4.1","@crave/farmblocks-tooltip":"^0.3.3"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.2.2","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-diRNND3jw5AtqJerZBREKa+jR609JIJPK9m4DkQlsGgC0aF2cUzSV4rAL7czNuqC9GLCwUZK0pe3nkmpQ6Fd+A==","shasum":"66a61333c3bf4ff5f97e3e0b494eaf7c6d7a4f37","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.2.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvlg2raNFsWOqY88LSGLa0eT+rRz5B4CGKIIftsgrbRQIhAPpXky+sXGlzCISkboKAplczndRodj+QN4BIwfEECKL7"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.2.2.tgz_1515068052565_0.12900324910879135"},"directories":{}},"0.3.0-alpha.bb6293ed":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.bb6293ed","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.bb6293ed","@crave/farmblocks-text":"^1.2.0-alpha.bb6293ed","@crave/farmblocks-theme":"^1.5.0-alpha.bb6293ed","@crave/farmblocks-tooltip":"^0.4.0-alpha.bb6293ed"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.bb6293ed","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-+lLV0VrUiuJM8dSxIK3BgdTQoIP3mPy53dBTV+btgwhyny/SzF97nj0i5ARpYxsYK507jka0WSKlynaBLBN9aQ==","shasum":"923b9e4332e8a1add4b43907cdf9cbd566f90cc3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.bb6293ed.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCD+7gCnrkirBNbEOyNDFaK0D2AS564jXgK99J8VmmcFQIhAO+eyCrXzBH5tuPpzkR0hE4V+26ZQrAw9PPRl78PRm1S"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.bb6293ed.tgz_1515269298273_0.26821866468526423"},"directories":{}},"0.3.0-alpha.8a33ca18":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.8a33ca18","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.8a33ca18","@crave/farmblocks-text":"^1.2.0-alpha.8a33ca18","@crave/farmblocks-theme":"^1.5.0-alpha.8a33ca18","@crave/farmblocks-tooltip":"^0.4.0-alpha.8a33ca18"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.8a33ca18","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-4PGbZZiqukMKN0RImPhkjBL6OWRcN8OvcOtLZ3tz+1Ep9gP/m7zpHz5sDt6c7MaoaC7MSv2HQN0MwxCwThDd5Q==","shasum":"ebcf4aafe461de0a01a31b2880369b076ef7d3c6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.8a33ca18.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFacXvT20erg7zm76oUmPuehiJWgsdauBT8Kk58G09WUAiEArGtPw2xNRaFAcX1Y3fTQydwZ38j5Mmj+YqCkORverK8="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.8a33ca18.tgz_1515273781137_0.9686170660424978"},"directories":{}},"0.3.0-alpha.d467d10d":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.d467d10d","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.d467d10d","@crave/farmblocks-text":"^1.2.0-alpha.d467d10d","@crave/farmblocks-theme":"^1.5.0-alpha.d467d10d","@crave/farmblocks-tooltip":"^0.4.0-alpha.d467d10d"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.d467d10d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ICTuccAdlP5Dgc0r3lIjQzrL5ItIAohAlpWntShZx40+AlwfPtjvnjPCW7eKNHtwLm5GGEY9l0xVpNIfH9UVJg==","shasum":"ce89d6e8bea6ac7550df3893b4ca3cc9124b7b50","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.d467d10d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKZK8JDREHDSibzbbx4UVwpZJPZ5PGwYeEH+OKLucV+wIhAKrAK4eq6CyIfEioz3Z+zp288WhrdfH71uUhzu0qHLMR"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.d467d10d.tgz_1515446648006_0.386407625162974"},"directories":{}},"0.3.0-alpha.3a8e629b":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.3a8e629b","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.3a8e629b","@crave/farmblocks-text":"^1.2.0-alpha.3a8e629b","@crave/farmblocks-theme":"^1.5.0-alpha.3a8e629b","@crave/farmblocks-tooltip":"^0.4.0-alpha.3a8e629b"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.3a8e629b","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-fE7tlGbD6NSS7BXFNqwXZQodZfKN0Bj1tzyVezzAcRu0GE1MFFoq0eC8TvPzSuzbVGYNFIWloT9WE5w/NNd4LA==","shasum":"c15865ef588264db67d6ac3c9e2990234ad5743a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.3a8e629b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzKs8/NGgdgb4IIt8wdrCtpV7hUySmEs3mRcT+mFJu6AIgWvXmBYZoEal6CUR3cX/rELNnlviFeiZdZqNDgio3GUY="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.3a8e629b.tgz_1515519567726_0.7804386590141803"},"directories":{}},"0.3.0-alpha.04dd2b78":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.04dd2b78","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.04dd2b78","@crave/farmblocks-text":"1.2.0-alpha.d467d10d","@crave/farmblocks-theme":"^1.5.0-alpha.04dd2b78","@crave/farmblocks-tooltip":"^0.4.0-alpha.04dd2b78"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.04dd2b78","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-j0ZHWJmEz5f1m+e/rEp1TOM0SQg0cnDxgBXCbwtw41xo4hvhwd9gsYMN0oEfbYH/7sz5W1h3q27M/WfT97IIog==","shasum":"3708bcfb3de878767bb76104dff7dc7fd57c3695","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.04dd2b78.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICJxfPdRu9zG4w3Kw+x6qXnq2HW8u341XpquwCmpHQXOAiAp41PRu7RFbEeIdWV9jQUvLlNSNMAnRI6Y0CH90nOjhA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.04dd2b78.tgz_1515523716328_0.6122549660503864"},"directories":{}},"0.3.0-alpha.0d246ed4":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.0d246ed4","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.0d246ed4","@crave/farmblocks-text":"^1.2.0-alpha.0d246ed4","@crave/farmblocks-theme":"^1.5.0-alpha.0d246ed4","@crave/farmblocks-tooltip":"^0.4.0-alpha.0d246ed4"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.0d246ed4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-xdoE3L/MYo++lekcaiEAtVnYwu0vOZdvrZREBh+NDu9Oh+Iv3CD+Nf88xJizbUzosqdc6karZfHKXCEOKr2wGg==","shasum":"bda9c71075d0b35cb9bf1e93e26e02fa04588b63","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.0d246ed4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUxC1yXY94B6EMP0W14QiLWCVEPA3EU9+qWwojISmumgIhAIv5f/ewbCeOOmuxZKPEeR2eiOQ/BL5T+FDFzibRB07f"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.0d246ed4.tgz_1515526755763_0.07871609483845532"},"directories":{}},"0.3.0-alpha.88004463":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.88004463","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.88004463","@crave/farmblocks-text":"^1.2.0-alpha.88004463","@crave/farmblocks-theme":"^1.5.0-alpha.88004463","@crave/farmblocks-tooltip":"^0.4.0-alpha.88004463"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.88004463","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-XBXC7IEa+RHWyH360gTPEiiY8d38+yvsJ8CqdF/d8yqAlmbMq2xV3Fl18kNgYgQBzMzJllG1TLmozBG2LyVKeQ==","shasum":"e49ac77742f5d9e8052944d9264782bf21cd5ebe","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.88004463.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCab5YexfIdg/8cjl+dVaflNv1V+CWwoRPZ7qaBgJcgMwIgKlzwRxso/Klx1ZloBr4+jqeN5ox1nhgGAIwZmd9Yzno="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.88004463.tgz_1515526879054_0.4253547880798578"},"directories":{}},"0.3.0-alpha.52d04f4b":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.52d04f4b","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.52d04f4b","@crave/farmblocks-image":"^0.4.0-alpha.52d04f4b","@crave/farmblocks-text":"^1.2.0-alpha.52d04f4b","@crave/farmblocks-theme":"^1.5.0-alpha.52d04f4b"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.52d04f4b","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-M57TFf6iM4I4QDglCPcQmCXIP0q8pHNzJizzi5HMYwVklmaonLpzlcYXDYzs+d2ox0+o1+U75gaTxkYgXE4D8Q==","shasum":"c418e3150c5822b25ccf06554542335127cbc40d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.52d04f4b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICO7BVYaVH8v8Ajc2wmN0DYnGC3Ak+64ezBByP49/KFAAiEAiPgL/MkMvIm3dqWchZOol/CjwEbCq28j1tW1aii/8+E="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.52d04f4b.tgz_1515589369034_0.8979766939301044"},"directories":{}},"0.3.0-alpha.d5ef6a8a":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.d5ef6a8a","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.d5ef6a8a","@crave/farmblocks-image":"^0.4.0-alpha.d5ef6a8a","@crave/farmblocks-text":"^1.2.0-alpha.d5ef6a8a","@crave/farmblocks-theme":"^1.5.0-alpha.d5ef6a8a"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.d5ef6a8a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-28dc6dMtkjiW0fjkb/O5/bSxY5Pv6QIPyWnCkwCAQtADGbRhL3/Yt1y3DKfbHL3n3td3pa914fUTrozRYwM7AQ==","shasum":"c2bb5f32af29e2292e6774cfe7142a7054d5b87f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.d5ef6a8a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfM0Bbjinv9hnLTnBH6b8AzqP7UUIoVySN9N/Hk67w9AIhALnmgsUam56BQyk5twV031BHJeR+KwRpSfWLDXI7x9lK"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.d5ef6a8a.tgz_1515593661808_0.5882637649774551"},"directories":{}},"0.3.0-alpha.e5933b1b":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.e5933b1b","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.e5933b1b","@crave/farmblocks-image":"^0.4.0-alpha.e5933b1b","@crave/farmblocks-text":"^1.2.0-alpha.e5933b1b","@crave/farmblocks-theme":"^1.5.0-alpha.e5933b1b"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.e5933b1b","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-CERp1gjCTAF8jBG17kUuk+aHeHvQQiFLftxjaGMKo5COBCf+W1NJYpXdT/vWKC6Q86vB9cxhfgphBBFZqLCKAA==","shasum":"080dea685ab617c3cccbe44cda893c415505a62b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.e5933b1b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF65RJpy1gfsveOOg4IrVolDX9B5PfQMq4xJ5Bf/G93PAiBRj0QSmH8qxF8b5vHX/JqhZ/1saa/tUF7IcPjQCJZMvw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.e5933b1b.tgz_1515608583059_0.5240845673251897"},"directories":{}},"0.3.0-alpha.0b59d904":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.0b59d904","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.0b59d904","@crave/farmblocks-hoc-input":"^0.3.0-alpha.0b59d904"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.0b59d904","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-FEJO5lP90P6Wg5T+Au2/D5g8+Za0BOSIm4JuKVNnJmRq4OyKI/MqTQOFLaipG4ClRBs9I9CfO2o9s1buvGjL6g==","shasum":"c102bed569f3e23e2a572106946fc470c10fe33b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.0b59d904.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIElPeR//TZmeLNbA1qhAeD39q9wdBdMiqVDXZyIWqwtRAiBNI1DcDxtSpwsvnWbbCXhMFrfdSoCIUH/Sxd9y3L4MVQ=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.0b59d904.tgz_1515668264878_0.9474566963035613"},"directories":{}},"0.3.0-alpha.69924a92":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.69924a92","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.69924a92","@crave/farmblocks-hoc-input":"^0.3.0-alpha.69924a92"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.69924a92","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-dLffEFHTFSOJvtM+sQSJWvOMoUAp37UBUYHCNKgJBSHNN3x8pqhT+D6HIUY07G+6m1K7hb4I4YXouNQgtZFmng==","shasum":"47cc9ccde3bd2b36eaae4708f65a74039295bbb1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.69924a92.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDRTlI86hFNLMlnM5xQ2TT84DZXKJ/ZcWVz/LIcD135jQIhAKc1db5a7s15STfYaoiCNooZg8tgPr1xF3XrF90hZsTQ"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.69924a92.tgz_1515668671814_0.6732256123796105"},"directories":{}},"0.3.0-alpha.966e9252":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.966e9252","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.966e9252","@crave/farmblocks-hoc-input":"^0.3.0-alpha.966e9252"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.966e9252","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-yjJnlyHEa6IrX/EI75kYFpb7Dd/x9Q6GPEtdMRyXHgDCKJmY6nnykXF3bz1YpDbvXB+hnMuoTR/0H8zfDrFV8w==","shasum":"d132e0be9e1ddfb276a3deddb154caad4b922873","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.966e9252.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3IkJlyuSRTRvL2ENlMMCVhuZyFp1qPbiO6bC56/7HUwIgdAE0HmjHjB6P8aLrVOWljr3iqAAHh+r8dwgYhQsC0xU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.966e9252.tgz_1515668838687_0.9302767221815884"},"directories":{}},"0.3.0-alpha.ff765b02":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.ff765b02","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.ff765b02","@crave/farmblocks-hoc-input":"^0.3.0-alpha.ff765b02"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.ff765b02","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-mQKpO0gvh5ueIezjU0pz3N7Oif2dm1Ev3mAwTPReydl3Z0s4URBZ07bVvsZ1wsrpoM2IYpPPVUWv+kfPrHb7tA==","shasum":"cbe9de3de6b1911223db97e95751b1a1ed3d7330","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.ff765b02.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdnwBCgaiEpGfXQno9/vF7JahhDSVD4IfsdOlMYuwgZwIgfLwS24e7gLpFeZNft/vjsMfoVYjrNwceiKIgzPeUK60="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.ff765b02.tgz_1515669207211_0.4021414800081402"},"directories":{}},"0.3.0-alpha.88a3d85f":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.88a3d85f","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.88a3d85f","@crave/farmblocks-text":"^1.2.0-alpha.88a3d85f","@crave/farmblocks-theme":"^1.5.0-alpha.88a3d85f","@crave/farmblocks-tooltip":"^0.4.0-alpha.88a3d85f"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.88a3d85f","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-EYX35HDa5Pj1tSnAHolAYECo4yl2VJG+nMDCgcW5P+nkVx1E14pH1d3ujqSuviFo97gikCUum5o+WMpKz6jPnA==","shasum":"d7f9bedfd83a8b2a4bdef3aea1f8cc59ce4bbb8c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.88a3d85f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICkGRVI77X+6BlaY8SP4dw6ql7CHQosh1zR2vaVbeOvxAiA8RFN1zCZ/YqPwdIq2WlJyar2DY9W7N3GQvpv8suq5iw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.88a3d85f.tgz_1515773737077_0.9360145130194724"},"directories":{}},"0.3.0-alpha.9660a70d":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.9660a70d","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.9660a70d","@crave/farmblocks-text":"^1.2.0-alpha.9660a70d","@crave/farmblocks-theme":"^1.5.0-alpha.9660a70d","@crave/farmblocks-tooltip":"^0.4.0-alpha.9660a70d"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.9660a70d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-F2JZgmVhIH1Z1qG5PMTUd/MqD3ALKThygLTOu/rgmwTtUhzXv5O83WEPBuDGIRy08V3e7wIFrny8GqUB6wtEVA==","shasum":"1c2476010163df43d13ba064bb99864a5e699ac1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.9660a70d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbErMej5sM+LmoxNA3y1oJgKlofYqlQcwWVMipvSc9yAIgHqNoFfHCE6IOwF+rTAc/hyKXywEtwgehrj/RlQw5gpQ="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.9660a70d.tgz_1515789562179_0.5764908604323864"},"directories":{}},"0.3.0-alpha.da3401b7":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.da3401b7","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.da3401b7","@crave/farmblocks-hoc-input":"^0.3.0-alpha.da3401b7"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.da3401b7","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-IXvoXDdfmePM78PHUUJiTRYDXcHqt8ejq11JJKlKAcqG9eRyxVIxzqPBaB7HBrQ5PxscD+xPkaBBqswHXDP5VQ==","shasum":"a47ca51420655620b9667bc486fa2a1337283d52","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.da3401b7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDKpGnEvJvv611p8BtLKWNyTSFVMy41utxeCY3z6sCS/wIhAMSAatiLX4hk2KwNo0k46NrY/bPzhc873FzaDP496+tp"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.da3401b7.tgz_1516036787624_0.6647226812783629"},"directories":{}},"0.3.0-alpha.ad4af0bf":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.ad4af0bf","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.ad4af0bf","@crave/farmblocks-text":"^1.2.0-alpha.ad4af0bf","@crave/farmblocks-theme":"^1.5.0-alpha.ad4af0bf","@crave/farmblocks-tooltip":"^0.4.0-alpha.ad4af0bf"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.ad4af0bf","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-N0vzWo8BNzFrn/gQ5qnHgqjPpoo1XBUMoc+cqHxMFVc2YhkxxBfhj49778ZdAA4NvCbr2dD3WPZodYllcxoRpw==","shasum":"c7237851f4468263a1b9beb9d570ab332c3d2995","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.ad4af0bf.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEOtwzBmKmpTr176CaFZ3cm1NY6/cSe/eHBBFcJnVRcJAiBbC6TufwBt5/ugvP6zDVavP6m65vpjt+l10WR6kaiBUg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.ad4af0bf.tgz_1516116380755_0.604127702768892"},"directories":{}},"0.3.0-alpha.72f7861d":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.72f7861d","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.72f7861d","@crave/farmblocks-text":"^1.2.0-alpha.72f7861d","@crave/farmblocks-theme":"^1.5.0-alpha.72f7861d","@crave/farmblocks-tooltip":"^0.4.0-alpha.72f7861d"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.72f7861d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-4v8QeQWkKamJg9CfqWHBBg9hmE228TrzpAKjHRddUgaE6HgeXcsRBWVkpGDTdaxgCexhInV877OWGpyewWy3kg==","shasum":"e7040beaf24913a691aaf6844799fbd78818e92d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.72f7861d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHcpiLinkjlQ5pUYzXvBliWwy5AmEAC5Q5HxFXNH/UwQIhAM7Q5HZWQjDexaxCRdHL0+qEwXtuQabNI+N5AT/mI/gT"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.72f7861d.tgz_1516116471011_0.4491087179630995"},"directories":{}},"0.3.0-alpha.c7f237ec":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.c7f237ec","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.c7f237ec","@crave/farmblocks-text":"^1.2.0-alpha.c7f237ec","@crave/farmblocks-theme":"^1.5.0-alpha.c7f237ec","@crave/farmblocks-tooltip":"^0.4.0-alpha.c7f237ec"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.c7f237ec","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-SgShYttd6dLelLdIryV0LojCXETcbXTDeGiSMDSn5rotTZzBp1//jV9LKDtLT6ryL5EJSJ+YrcCH7Mgv42bVqg==","shasum":"a14e0b1a573969964df54fea4051249e2b1ff634","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.c7f237ec.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICTz/0U6CSEQWi2ycp5SMqJp6e2SnOSR94HfT8VvOzptAiBORDjqLmnK9F2MHieFJfgOgbLTsBtNMLeFPcCTY1OqOA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.c7f237ec.tgz_1516116607501_0.9756646091118455"},"directories":{}},"0.3.0-alpha.72a11852":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.72a11852","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.72a11852","@crave/farmblocks-text":"^1.2.0-alpha.72a11852","@crave/farmblocks-theme":"^1.5.0-alpha.72a11852","@crave/farmblocks-tooltip":"^0.4.0-alpha.72a11852"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.72a11852","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-YEelees6Fl5rDRxIAvP0aeSS4UHVUJVg8hh/KU+saz5gyPZeQimZRwTwJeH90JrEyjRT9/RTYm5PIhGiFDzOWQ==","shasum":"1a8290bd9f67c21ff36d4283e6305a72fcc61017","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.72a11852.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCf0Q1I9JtWgAUIJV7ASve21qNWIBwbiFiUR/xP1C5sVAIgH0QMy6IqAhd47YV/BnEc5nmwY2UkrL1EnKx5XQ21iBA="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.72a11852.tgz_1516118184646_0.9878912845160812"},"directories":{}},"0.3.0-alpha.f1639c52":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.f1639c52","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.f1639c52","@crave/farmblocks-text":"^1.2.0-alpha.f1639c52","@crave/farmblocks-theme":"^1.5.0-alpha.f1639c52","@crave/farmblocks-tooltip":"^0.4.0-alpha.f1639c52"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.f1639c52","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-kIbbXAGQlsOKL8Wg9oKWFyzTrbo1fhuhZ72PFnqjoFGYriFbQubDpw1Rim98CYJkY01akN7StawEuRQo6TKxfQ==","shasum":"d9e180a59f04a211c090faefff4ad92713d7991d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.f1639c52.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCncI7Okh5OTCGAMO/qLzDi3cC4ZkbHZdXoKK6VlnxiuAIgVO8NU4fBoGqjMKSafMDk5t7tdayNUvYeRVtsmM24uH0="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.f1639c52.tgz_1516118582911_0.20932508632540703"},"directories":{}},"0.3.0-alpha.37f958b0":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.37f958b0","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.37f958b0","@crave/farmblocks-text":"^1.2.0-alpha.37f958b0","@crave/farmblocks-theme":"^1.5.0-alpha.37f958b0","@crave/farmblocks-tooltip":"^0.4.0-alpha.37f958b0"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.37f958b0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-FMXIDnO+zkh6jDrwOXF6hP2edJwYfHaSAp0rxmheCSL0orhQg2mQ5E9UNkWWpjaa9+defSLdsNL3N6fOqT6kjQ==","shasum":"c5ac1302a0855813b2eb5201947ab2021c324eec","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.37f958b0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC5DXWm1LZmnPhYJPGB3Z6RbZsa4kRefysDcy3ez0HqNQIgKe3iLfU7KiVev+7nSzHmThF9Wh5nM1O5+JiIFFsWiXw="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.37f958b0.tgz_1516118618727_0.9079817950259894"},"directories":{}},"0.3.0-alpha.7940b619":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.7940b619","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.7940b619","@crave/farmblocks-text":"^1.2.0-alpha.7940b619","@crave/farmblocks-theme":"^1.5.0-alpha.7940b619","@crave/farmblocks-tooltip":"^0.4.0-alpha.7940b619"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.7940b619","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-c2sqvXzQxtaI30s+KNUjXTCwor2ROyhx32tUgSX/LEd9IPu+ql2IbH1yYqZciwwJUMh1AMZqr+uDSQ/58oLPRQ==","shasum":"af9128dfc860509ce9840018f2a6292dfc846945","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.7940b619.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA55YCYR96ZFO5OoH6ImBBZ/iBVYcb0xxLr3+ZRCO0WaAiBpYHPLYRWFv5E/bu+GInwbYpDDbQWGPdQpiSNVyQrs8w=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.7940b619.tgz_1516122196931_0.41818644339218736"},"directories":{}},"0.3.0-alpha.508be306":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.508be306","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.508be306","@crave/farmblocks-text":"^1.2.0-alpha.508be306","@crave/farmblocks-theme":"^1.5.0-alpha.508be306","@crave/farmblocks-tooltip":"^0.4.0-alpha.508be306"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.508be306","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-qfMTfmrriLT6y/a3KMybAFGZ8/AisfRaownRon/DWFSBdw7OvOra/kdiiDuIeyzkUEKxYnMw1tg/m06YN3YPjw==","shasum":"dcfbf2dc46108f047f026465cf3b36601e785ebe","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.508be306.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmZNEs/MG1nq9rt6FwRv0PCAcm2Ml5C2ajjJYi9DZ7yAIhANBmNq5vxRBAMSh02KnL6JCJ3T2eWo/MmgUwArVn3++r"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.508be306.tgz_1516124831445_0.2858630893751979"},"directories":{}},"0.3.0-alpha.72afcc6d":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.72afcc6d","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.72afcc6d","@crave/farmblocks-text":"^1.2.0-alpha.72afcc6d","@crave/farmblocks-theme":"^1.5.0-alpha.72afcc6d","@crave/farmblocks-tooltip":"^0.4.0-alpha.72afcc6d"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.72afcc6d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Q3HSmReosubfaOaK8Mp7aXJDCLY+fKUTxEcx1uZJkeFsngmT4VVRks1jBArarL+jFHfbqt88oioNq9Od2+iVuw==","shasum":"803f4575ee064f6933f417793419672e604f01da","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.72afcc6d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDzCvWaSNnfvERcvtgmdzXCOwFFvZne4Sjd3K7IYMUS0AiATB7DIWraQ9KI9CUUUf67XNRcWCC39kIFnzVd75qq2tA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.72afcc6d.tgz_1516131248993_0.5317550203762949"},"directories":{}},"0.3.0-alpha.44faf0a5":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.44faf0a5","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.44faf0a5","@crave/farmblocks-text":"^1.2.0-alpha.44faf0a5","@crave/farmblocks-theme":"^1.5.0-alpha.44faf0a5","@crave/farmblocks-tooltip":"^0.4.0-alpha.44faf0a5"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.44faf0a5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-8ofT6wUZ8nrZvHofpl3QsYBRJexce9tWtdQDaGJ8p8NgDTaIC6CJUjrgTkqzNqvhyUxr4tENIwrtT4diLn/DYQ==","shasum":"29ec98c26adca86da8913165486ea4da5b2806ec","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.44faf0a5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDLRNYHVxHmo9noU37Io3RgUHNs10ZHwwn8nWVOkdBUgIgXlwfuI6mHu1FIWdMU17mQ8ZEkeLJKHL9cDGv2Wds6Ok="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.44faf0a5.tgz_1516138182514_0.525351639604196"},"directories":{}},"0.3.0-alpha.0bb79ce5":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.0bb79ce5","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.0bb79ce5","@crave/farmblocks-text":"^1.2.0-alpha.0bb79ce5","@crave/farmblocks-theme":"^1.5.0-alpha.0bb79ce5","@crave/farmblocks-tooltip":"^0.4.0-alpha.0bb79ce5"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.0bb79ce5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-yDzf4jl26ZNnTWRvth9XSYyahVNdDCNvrPE8I8jc3r/CiBwhK2+B+JTuKEGVA0oopgETydzMmAVNS8uyFiuh5Q==","shasum":"ad7d56d4b11bb325941568b07b03a6321074346e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.0bb79ce5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyTbrjdo2ocfKlytgqWVR9Ri6z7XdV6u6C7fC3Hhaz/QIhANPIR8fJWXhSdHSWwLTlCzkSLIxDh1oePI5e4pGxg60q"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.0bb79ce5.tgz_1516138278566_0.7300542194861919"},"directories":{}},"0.3.0-alpha.99d6ab88":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.99d6ab88","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.99d6ab88","@crave/farmblocks-text":"^1.2.0-alpha.99d6ab88","@crave/farmblocks-theme":"^1.5.0-alpha.99d6ab88","@crave/farmblocks-tooltip":"^0.4.0-alpha.99d6ab88"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.99d6ab88","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-vl80ot/YZ28FKIOO5qlFOspQJ3ZaLLvZ1XoHN+MZgBiy3cHhgbGimxQ6Z30E8zJWaasis8Aht/HbjcqJFEDnqA==","shasum":"b7bf28747b70e212dc70cef8205355a789db5741","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.99d6ab88.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH8HRsOFPT8BlFyfkeOBhw9cXMBRNpSNCQfvAz4b1B+2AiEAkdEp/drv02YZ6jAx7EY7qlh3NmeVxqs3GZFPlQg4GPU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.99d6ab88.tgz_1516187123782_0.2105792968068272"},"directories":{}},"0.3.0-alpha.435841b2":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.435841b2","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.435841b2","@crave/farmblocks-text":"^1.2.0-alpha.435841b2","@crave/farmblocks-theme":"^1.5.0-alpha.435841b2","@crave/farmblocks-tooltip":"^0.4.0-alpha.435841b2"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.435841b2","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-7F480BBaoX605kiMAFrdVetEPlj26lpidTjkLFMvIUavVJvetApkbFRFdI3F7EJCoHBTvFg+SCMY4C5lvrdcXw==","shasum":"335d536e339d2f2282ef45c4ad98334b241a6494","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.435841b2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGmrQPnQ2Vrssz7JZL5t8dH/LASy2bKTN8lBgQMamE1kAiBxKNOKHRDDQPuFJAfa5Xv1AwPPgq/dmuJTlXr25SumKw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.435841b2.tgz_1516188662179_0.3198614998254925"},"directories":{}},"0.3.0-alpha.3c3d2f95":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.3c3d2f95","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.3c3d2f95","@crave/farmblocks-text":"^1.2.0-alpha.3c3d2f95","@crave/farmblocks-theme":"^1.5.0-alpha.3c3d2f95","@crave/farmblocks-tooltip":"^0.4.0-alpha.3c3d2f95"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.3c3d2f95","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-QtpMBePqJe43Q7uk4fUoSpvEOmJ0bIBj3yglqLIphsmdsnFLeEP+LXHES76YOKUni9QPcPYbMuXwkSjZWCfVNA==","shasum":"edbd085427c61228f18692f4ab332ada511be38e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.3c3d2f95.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRBxlNjCPfkvR0f3Fie5qcqD9ezIyhWNC6184GNg8quwIhAKEXnRgfqyfK3whJFbdgasnAQoUFlLnWhToyGRkOr+ZR"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.3c3d2f95.tgz_1516192769875_0.7368566372897476"},"directories":{}},"0.3.0-alpha.a4bbf04a":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.a4bbf04a","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.a4bbf04a","@crave/farmblocks-text":"1.2.0-alpha.d467d10d","@crave/farmblocks-theme":"^1.5.0-alpha.a4bbf04a","@crave/farmblocks-tooltip":"^0.4.0-alpha.a4bbf04a"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.a4bbf04a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-c16J/GpmXadWL3CmqR5U5xdPrRoM7EWS3w2HdlGHOKsDR+uBLP8KkMTz4SQiQPlG1T751qlx4Y82L2Y8HT8a7Q==","shasum":"70957143cf152e611b2440651cd96096fc50d946","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.a4bbf04a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICHuXGAAyLZwTQN4PlwzbtaecMp70s3YAkBGbULb6ZtVAiAN5XFG8XuHsj46yQbLefu5X8i5JBzuAPOnF8C3iOkgnQ=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.a4bbf04a.tgz_1516205115594_0.09638442378491163"},"directories":{}},"0.3.0-alpha.05aa3a60":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.05aa3a60","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.05aa3a60","@crave/farmblocks-text":"^1.2.0-alpha.05aa3a60","@crave/farmblocks-theme":"^1.5.0-alpha.05aa3a60","@crave/farmblocks-tooltip":"^0.4.0-alpha.05aa3a60"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.05aa3a60","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-LP/xzJvmLDNhvCTKCV4Xfy4uDH+IwDC6u5n7weFVgGWujinmi/tOI/orgo8DUsYeoRNU2GC9HgNwtlIHDTZm3g==","shasum":"1881fdfd1b70356e946f2efb64295a6dcf61dd4e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.05aa3a60.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdcIQNaxLVE8muKdQe3vBxNmw41f9eAHQOwU55smgfBAIgejgQLwQflTXwIAVHRB5Lc1SJNeOzXxv1FkugbRMz9ps="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.05aa3a60.tgz_1516213296025_0.9604588015936315"},"directories":{}},"0.3.0-alpha.1c2355ec":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.1c2355ec","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.1c2355ec","@crave/farmblocks-text":"^1.2.0-alpha.1c2355ec","@crave/farmblocks-theme":"^1.5.0-alpha.1c2355ec","@crave/farmblocks-tooltip":"^0.4.0-alpha.1c2355ec"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.1c2355ec","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-5ltN5WFXZz17kDB0ylnXfdTLMEJBiU0PzcurHRhANhc7MhFevVSN87bSkaudP5MdpK+nF80rokpCOHM8COZmWA==","shasum":"06fce0d3a5a778d381861570061ecaf545c7749e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.1c2355ec.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKJt4IX6Vp1AOz3HhtolVkmIbsLklRoEqn+A/3hjGoAAIgTs/DkGj0cnCthZnnLFQBtPvjJWHme9mM0pPjfy1WHTg="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.1c2355ec.tgz_1516214119264_0.5273715921211988"},"directories":{}},"0.3.0-alpha.a4f724ea":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.a4f724ea","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.a4f724ea","@crave/farmblocks-text":"^1.2.0-alpha.a4f724ea","@crave/farmblocks-theme":"^1.5.0-alpha.a4f724ea","@crave/farmblocks-tooltip":"^0.4.0-alpha.a4f724ea"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.a4f724ea","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-dcpab4XUVpUaKV+6tmMsr6iYS1JSfFn4bMveLOq65Hw9E1TD316ZUVSIQqlPHNCHwOe06FPIsWXmDPdsyXkrcg==","shasum":"2b11626fa5ac1c4861ab1c19e936b9fb4eeaa2c8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.a4f724ea.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPqoH/liTFjqYLRuYH1fZ5nllWGUA6d5RsAjbBkzzCDAIgSn6mJFlNAXqF/f51dG2ewG9BwlDKdKB98JZfsVz8R04="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.a4f724ea.tgz_1516215558775_0.677275771042332"},"directories":{}},"0.3.0-alpha.b642a866":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.b642a866","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.b642a866","@crave/farmblocks-hoc-input":"^0.3.0-alpha.b642a866"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.b642a866","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-VA8ZLWJs1kqNECpY3lnAQsseowmALjHqSL8wv86N63/pMAQf9ICJjdbpPxTkaiEbPrS1mCLVjJ64rw0Rh087pw==","shasum":"d79457f095219a6eae00005c02290b6ac44823bf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.b642a866.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDc5VIa12pu5c2t66FbozjVHwOFyUVWa88ahw7R8ZubeAIgDIsh0vB/9fLMusUROicz7JeG2JJHI/Qs/2ssyXwnzFA="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.b642a866.tgz_1516215563035_0.8592964250128716"},"directories":{}},"0.3.0-alpha.e15f535a":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.e15f535a","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.e15f535a","@crave/farmblocks-text":"^1.2.0-alpha.e15f535a","@crave/farmblocks-theme":"^1.5.0-alpha.e15f535a","@crave/farmblocks-tooltip":"^0.4.0-alpha.e15f535a"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.e15f535a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-UTbsDs2b/kKtVYMc99y8kEPhrO1iwsn0zFBj0TSLyB5kOZF9R3VEKnOHiFeVM/P0Il/mPONgSWFpp2a0Vtmc8w==","shasum":"14d852ceee60dc8fb284ff1d76435102a601a23e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.e15f535a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDOfLYnoAE2acOSHsZXYq3Eka+fPYF0MLLWyr9B+JibIgIgMNvpYQNCiO36QU/iE3ruS8nbDFaLqPpbt0oQqE93NEk="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.e15f535a.tgz_1516217148526_0.6287456054706126"},"directories":{}},"0.3.0-alpha.d92be909":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.d92be909","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.d92be909","@crave/farmblocks-text":"^1.2.0-alpha.d92be909","@crave/farmblocks-theme":"^1.5.0-alpha.d92be909","@crave/farmblocks-tooltip":"^0.4.0-alpha.d92be909"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.d92be909","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-u7SKJVOGCG1eOypLB3TpmeepViaZIY23/iItYI1u+bxz8lmrj6Aq0XNH1gpBKa4RR8b88E33IV2tb21HivvMgA==","shasum":"41b21428ba1004c859e876724eba44e7c396a373","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.d92be909.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDvltmHU0GVTCn4LOKY9YUA7rrvmSANMLzABv12BENUgIhAP6q4wqvS984ipgOBJsHM0uQjW7lSE1eraIC93Uwixi0"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.d92be909.tgz_1516217210173_0.4088248913176358"},"directories":{}},"0.3.0-alpha.caa5275e":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.caa5275e","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.caa5275e","@crave/farmblocks-hoc-input":"^0.3.0-alpha.caa5275e"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.caa5275e","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-kisuDKqJ/U2lrPsCJ95EQ5GiO8UjoM9aSQs607rgoq3hIe/bvCGvG7h30Ti9peINi0L4NEiEv6q6sl/1+wZw+A==","shasum":"9b0266dc679ba78fe17e6a44edef95e7d99246c9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.caa5275e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICsKJkS8gPPlwohMfOAvo4RoXbvqAw2lEn4tBEuGYePbAiB69jvv52mmzuwJuK7kQkHah41FLSd1RBQQmQLiO3BwIw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.caa5275e.tgz_1516218107142_0.032860826002433896"},"directories":{}},"0.3.0-alpha.7012925a":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.7012925a","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.7012925a","@crave/farmblocks-text":"^1.2.0-alpha.7012925a","@crave/farmblocks-theme":"^1.5.0-alpha.7012925a","@crave/farmblocks-tooltip":"^0.4.0-alpha.7012925a"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.7012925a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-50uJQFCWMhhqwlF9FunveiXUIB/JHK4bvTCU7rY72pwpS+YV9W//uZ+2FChXDzjLh0O8W8hwWXag45zr96B5Kg==","shasum":"d13a0befdc2f9042554147748408eba7576f04f9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.7012925a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCiTHsMdrz+xslJRp8W521WY3uiXTntdi+ybbpzcoP2bQIgescKwBJGABdbVMcD7weOzc3W2QSQv3rDHWQF2zrzInU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.7012925a.tgz_1516218501903_0.555215687258169"},"directories":{}},"0.3.0-alpha.6c3335fc":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.6c3335fc","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.6c3335fc","@crave/farmblocks-text":"^1.2.0-alpha.6c3335fc","@crave/farmblocks-theme":"^1.5.0-alpha.6c3335fc","@crave/farmblocks-tooltip":"^0.4.0-alpha.6c3335fc"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.6c3335fc","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-vK1fb2AWljiidhrv++xIKFn/HRGpss/kR9u9SJL+N9jrohN9pUL6OAmbtKSZe5KmZok2kSO4HDh2qncIFbSa0Q==","shasum":"2877072a8c46c1f8cacf3c28da26ac0108c80432","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.6c3335fc.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYSd1hWy5ghh1WvodygkZ2GQ74ApnSWmsQxiLuGsHJOAIhAPMaQHqrLZIB9cAnmbOSR1US1/ouZHpFOaHeuTc9272B"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.6c3335fc.tgz_1516274391732_0.9513647272251546"},"directories":{}},"0.3.0-alpha.e6b4f216":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.e6b4f216","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.e6b4f216","@crave/farmblocks-text":"^1.2.0-alpha.e6b4f216","@crave/farmblocks-theme":"^1.5.0-alpha.e6b4f216","@crave/farmblocks-tooltip":"^0.4.0-alpha.e6b4f216"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.e6b4f216","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-hFnoWc2OkFjHn2HRdpqs4xb600zltlQDDNtp9ghKELR2Eyv17QiJ4WpWxIs56WYNHx3mshIwLT3412si+V1srg==","shasum":"3e74ac0241b6c8ab89a58e7f08f6a94ef3c62a1b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.e6b4f216.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIED7Inj8Rfh4QOZ6t4kPmMd0WlWqojIDISAt52mjMXbwAiEA+YkFWCayh1drm8dSaxbnrx+8FFlJWIhJ5PRZZ8BlaKU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.e6b4f216.tgz_1516278806725_0.5286462747026235"},"directories":{}},"0.3.0-alpha.fbf771da":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.fbf771da","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.fbf771da","@crave/farmblocks-text":"^1.2.0-alpha.fbf771da","@crave/farmblocks-theme":"^1.5.0-alpha.fbf771da","@crave/farmblocks-tooltip":"^0.4.0-alpha.fbf771da"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.fbf771da","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Qi7hairgLABJ/HQfvPFzMTwTtJJFVENZnWGNaJwF8LoKw360tLxWtN46gvdKjpdXy1NEEZhDdNWzAdPdOYII7Q==","shasum":"565722a14737338d3a40c694526ee5a7be3f8ae7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.fbf771da.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCd9VyUVF8mGTLJHcVScxx33RGj6EDk1GPJoxDjsazdrgIhAMOE0XTNWcsw+N879J+THxVzg3TJmuwZ1SAShogeM7pR"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.fbf771da.tgz_1516281606048_0.19419679325073957"},"directories":{}},"0.3.0-alpha.122361b5":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.122361b5","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.122361b5","@crave/farmblocks-hoc-input":"^0.3.0-alpha.122361b5"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.122361b5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-beVgOLW2d7krKOWrSoIqW2KNJ2d3XGfwEvxO8+IYezatUl7nb6kQij0VjjLFaLi5Iy5TCBVoy2JY1NT3WnclCA==","shasum":"0a3f6695d569570130a927a6f4d84144e761acc3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.122361b5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNEKvDvho46KTcoN1+h5j0mgkN4GeovnW1EwurxELN7wIgeuovCdPhvLcprUaMT6KlWSubBVZvcyIlcFcyHk0UZTk="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.122361b5.tgz_1516281637586_0.6949024086352438"},"directories":{}},"0.3.0-alpha.5696eecf":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.5696eecf","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.5696eecf","@crave/farmblocks-text":"^1.2.0-alpha.5696eecf","@crave/farmblocks-theme":"^1.5.0-alpha.5696eecf","@crave/farmblocks-tooltip":"^0.4.0-alpha.5696eecf"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.5696eecf","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-YoZ5+SksKvztAJgY+BUfNHXhk/z9cTaWj2vEh+e14IX78Gwp2wSYWvCxyGDspNqabAuseTRwzGH/8Jd6SQ3RCg==","shasum":"842965fe6f4c18f988e593a8fc89db72b2250f23","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.5696eecf.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBERMAnqZ4iNrccWa3PISP+mhaz+8tnV2kqj+OYelKUIAiEAlKAmvFQHTilzV9vEVNhYvbYXzjRjKJn56ORQKpahTVE="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.5696eecf.tgz_1516282199664_0.0054228403605520725"},"directories":{}},"0.3.0-alpha.40b945a3":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.40b945a3","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.40b945a3","@crave/farmblocks-text":"^1.2.0-alpha.40b945a3","@crave/farmblocks-theme":"^1.5.0-alpha.40b945a3","@crave/farmblocks-tooltip":"^0.4.0-alpha.40b945a3"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.40b945a3","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-fRnCcjGK6tXRbAkK6TjSQPISJ4LwufwjBfl/Hk4sz0ZSiyNtD/PPyNaJtn5CUqkUnhK52M+2GA5tYr14xCoXBA==","shasum":"e4cb7f9836908a3b20fa4163af61ce67e5d3d708","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.40b945a3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUUGpjrL/rAHqPC4luAMpKHgoLlJhyS/G0G+WKutI0IwIgEXEq3+dG1KJ7gq9K/rhttNUHihrJIdicrLyd198Utx4="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.40b945a3.tgz_1516282478240_0.021067296853289008"},"directories":{}},"0.3.0-alpha.2b628ef5":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.2b628ef5","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.2b628ef5","@crave/farmblocks-text":"1.2.0-alpha.d467d10d","@crave/farmblocks-theme":"^1.5.0-alpha.2b628ef5","@crave/farmblocks-tooltip":"^0.4.0-alpha.2b628ef5"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.2b628ef5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-QVgysfLflmuosqI9I0U7A1TlPrxxD5nwEq4j61aYMFkr8tYWHi6YF4v+k+1l2qpQo2JskTqy88y1cDkLBO68ew==","shasum":"64910471c617b4845771f03328f407f27b3d09dd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.2b628ef5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAbqyGz4taF5H2uYucQBOKJhIdtXe1Zkwt2J/oipnaMUAiBwDdFeq/xRH+EUhbDqqZlvxJs9oKl0Mtg/midRhV2lhQ=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.2b628ef5.tgz_1516282844627_0.7251783057581633"},"directories":{}},"0.3.0-alpha.1c8fea83":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.1c8fea83","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.1c8fea83","@crave/farmblocks-text":"^1.2.0-alpha.1c8fea83","@crave/farmblocks-theme":"^1.5.0-alpha.1c8fea83","@crave/farmblocks-tooltip":"^0.4.0-alpha.1c8fea83"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.1c8fea83","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-e5dQR28N1308NQJ3EbrOFQSArx1x4qNrGPfOJCNIkSKsAzjCgIZSGs8k4kddToEUNUmHQ2mV/DUOfHnZROGQrQ==","shasum":"26f10b425b2c550354dda729cc4a5060e08a32eb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.1c8fea83.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnqfHBZ1BvsPbH2aWOA418rC39xE4AdJcencLSmC6jNwIhAOqqBqDH+Sj/Ndpa52kAGkWUL2sSm9/Nytdfk/kLBg2u"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.1c8fea83.tgz_1516283128725_0.3608566694892943"},"directories":{}},"0.3.0-alpha.dce1d648":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.dce1d648","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.dce1d648","@crave/farmblocks-text":"1.2.0-alpha.d467d10d","@crave/farmblocks-theme":"^1.5.0-alpha.dce1d648","@crave/farmblocks-tooltip":"^0.4.0-alpha.dce1d648"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.dce1d648","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-jK3VnCawo6d10jCLBPV0OY2UKk8lstxNS9Cj517/3EX5fWfm6zD3Zcb5d2iIlVVrgYsplyXDJgL40pb0AWgzOQ==","shasum":"bab6ad2be8a6208b7d8e9c334d5692a3015fe357","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.dce1d648.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9K517Yry6tglFe/5v/XSCBL1wf2OwIseplLps0XZDAAIhALHf98RU6KKOywpKEdj1vrwKY7Tffb/Omp/4MwH+10zh"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.dce1d648.tgz_1516284665159_0.23708945186808705"},"directories":{}},"0.3.0-alpha.6d250d81":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.6d250d81","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^0.3.0-alpha.6d250d81","@crave/farmblocks-hoc-input":"^0.3.0-alpha.6d250d81"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.6d250d81","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-A8bjQoCSFYNbtLIf0FyolW6zXAYBSgcVkVSW4xszor7lAHGStC0eO8n2n/Ct2KBpiynmmJxquP1CF43rhF/CBA==","shasum":"abdf08541159e880e76b92695b0ce36f7e4f2ea4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.6d250d81.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9qT6PBgmoYTQMKZVNldGNLwXlI1V/UefILFMH31XjSAIhAKKtATTTRgh9ZL8w5xQExJ2IbwCd4lolgDsOg/63SkMA"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.6d250d81.tgz_1516284883863_0.11934485984966159"},"directories":{}},"1.0.0":{"name":"@crave/farmblocks-input-text","version":"1.0.0","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.0.0","@crave/farmblocks-hoc-input":"^1.0.0"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-7uGwjWPJrIVsjuUpxmuxI5oQmFfWE+lTbaLY/UKg6eKeMPB9V4hk8fXPgt40pcqYYS0WqCLOAicauSu+mv00nw==","shasum":"7f66de11ae95985f31cde28d44b2e72e1822acc8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBKTRoBdlb+ZBv8g+Ea0emA3deL8UnNB4bBry6iV2xsPAiAcF8G7Q5ZfuN0BUZ3xeJIZFVBJr79Daqt7gnvW7VL9pg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.0.0.tgz_1516285377108_0.3963986481539905"},"directories":{}},"0.3.0-alpha.2ddd8607":{"name":"@crave/farmblocks-input-text","version":"0.3.0-alpha.2ddd8607","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-image":"^0.4.0-alpha.2ddd8607","@crave/farmblocks-text":"^1.2.0-alpha.2ddd8607","@crave/farmblocks-theme":"^1.5.0-alpha.2ddd8607","@crave/farmblocks-tooltip":"^0.4.0-alpha.2ddd8607"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@0.3.0-alpha.2ddd8607","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-SOiQWYedSsKQjqn/CK9wT3SbduVFTjg+FenT+VtDMbO68Y4RvyUHYm1XKBTipGFKqIKDb5cU95FB6HLFfnvhYQ==","shasum":"d67efd8e7f50747c91b4a2f3554c8aa677860949","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-0.3.0-alpha.2ddd8607.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICW/C4Hh7gdFBpFWIpWeE0MfwGv58fKwfQ8KXBa5ys6JAiBA2jE4kin8NW5lVu7zcfw+Cz/iEg62yMjUgkcKxaSgGQ=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-0.3.0-alpha.2ddd8607.tgz_1516285497500_0.28549537365324795"},"directories":{}},"1.1.0-alpha.c94904da":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.c94904da","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.c94904da","@crave/farmblocks-hoc-input":"^1.1.0-alpha.c94904da"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.c94904da","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-1tW3JYjAE+h+mSfbcn4+Y8xjRIhYikIRfAhkPxMqcwKiCIGVtVlNBf9kG/4lq8/Iv/0v/YJCeZnH8TgSVk81Zw==","shasum":"f428f5be84c73db06a74c51d286ccb058eb7cf5c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.c94904da.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyshX4WyWWhR8kl9+3KyofzmuSvWFWJc5lCa1mO14X5gIgZDh3ag2r1EDWfNIhvWBBH1qoDEQgfl7MwpXN4C3wLDA="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.c94904da.tgz_1516285785064_0.7801649852190167"},"directories":{}},"1.1.0-alpha.9152ff6e":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.9152ff6e","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.9152ff6e","@crave/farmblocks-hoc-input":"^1.1.0-alpha.9152ff6e"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.9152ff6e","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Dae6UhXWY5u2kBFie3K2kp8Ry/ggfyodhaE73bicd5o2gnpV1FQyYvvPhVAVvgaV7k/2pQTJo9KXJCzuETtsQQ==","shasum":"7cc83aa4b1f1883e39110e4e436ec1059834a940","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.9152ff6e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrsdWoORzXNYgo8Js08Cm+kyMeHsKKhhwzh3DoyAbpGQIhALsEpW8akeTnsXr5V+8l1791IhWgR+hBF711UjfDZB9k"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.9152ff6e.tgz_1516287710522_0.6570549427997321"},"directories":{}},"1.0.1":{"name":"@crave/farmblocks-input-text","version":"1.0.1","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.0.0","@crave/farmblocks-hoc-input":"^1.0.1"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-TVEcuPSQofPjQt5Hey/gJMK7wfBBqRlX/SxH9TkqSBUvne9CaxiA6iYaZX6S2ktU5aXdjN5r514S9jWxL0zE9g==","shasum":"7a2b6238a7ad7ed0dc80b2b4d8d72f43b518db3b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEoJF0bKohjeyfs1dUKSHFJDuY75MsylfOSa2J1fNcHwAiAj0ADOAK5Wn13YH7GUwiTtsJKQE7baYPxxh0Gs+E/91Q=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.0.1.tgz_1516288176140_0.5694201840087771"},"directories":{}},"1.1.0-alpha.edebbebe":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.edebbebe","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.edebbebe","@crave/farmblocks-hoc-input":"^1.1.0-alpha.edebbebe"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.edebbebe","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-on4VWjkLlCzOG4zliwI+ons8ME8XdR2gLlAXi9soZyaRI89LLdqGQj+zyLdC83oXDVFIkEicBTBxCO3g0hMOOw==","shasum":"c2cb712886a0d4d2a7e0d50be417c4736c4d02a5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.edebbebe.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmM/FN7VqUocsDzyYblCRKIpVjzQlYiaKBkV67MLF0pgIhAM5es2NRbJe22yxlqTxUIdWdSCxkvbpOyUSXKJmeJxMh"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.edebbebe.tgz_1516288598887_0.5924334290903062"},"directories":{}},"1.1.0-alpha.a99690bf":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.a99690bf","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.a99690bf","@crave/farmblocks-hoc-input":"^1.1.0-alpha.a99690bf"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.a99690bf","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-a/9hTfY1/A2MHNEmVKEYzdpdMxwT6q/+7eI1vyXMwtqLY096Sn1SqhpsZ/lOEDIvGMhh3X9e0gps/zINa0VbFw==","shasum":"0d7fb8c7489d82dba811f394f6040469bafe43fd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.a99690bf.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHx/wBFtwX/zSAxEXyLLLceCMo15fd+De4m2QYEmoNVaAiAqCvf4Cedn7qYvqu84R/0jzx89sudHtQRlc2fKfxgU1w=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.a99690bf.tgz_1516290426586_0.5737003947142512"},"directories":{}},"1.1.0-alpha.6223518c":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.6223518c","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.6223518c","@crave/farmblocks-hoc-input":"^1.1.0-alpha.6223518c"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.6223518c","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-gPjovJlACFF9V1OyDBqwAXWrcZ5Pxr0Sk7MNHob/azr5NR0CiOuNofhELAHt2yz1OTM13QoRIzNJPbEQCgec1g==","shasum":"bbf20c9050cbf038167add9c106a7cbf9bf342f3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.6223518c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGas+NNhjKm/FNEQrhMy3wWIpsBs/dvxwWv0l6S1AyTJAiEA3lQL/FtEfMDuzRARwTwSKFr4g3X/X+wC1jjjeQat488="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.6223518c.tgz_1516293596844_0.26158803794533014"},"directories":{}},"1.1.0-alpha.173aa547":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.173aa547","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.173aa547","@crave/farmblocks-hoc-input":"^1.1.0-alpha.173aa547"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.173aa547","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-cJ87hbfu1KD09UBdxv3U10H0MBDhk0SNfE/Qsc8nmRdISjlPtm0UgigwXPdJObO4/3lOlYlURiIG1vus7tqHjQ==","shasum":"4ffcd8147e0fd8ddeda243dbe60800b68d54c87a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.173aa547.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDc/UrrAE/FIQkhIiY2PrWTzo8SR97kCwscBo2al8ZdvQIhAN8QWbHfoitGKAroG3mjWxqgIVvJbd+Ab/0lrQCjPza/"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.173aa547.tgz_1516296207441_0.03388223284855485"},"directories":{}},"1.1.0-alpha.26ead46b":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.26ead46b","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.26ead46b","@crave/farmblocks-hoc-input":"^1.1.0-alpha.26ead46b"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.26ead46b","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-XgLauWm0XjuDxJm4smEx6NByjW/EAEH1RvStvn5L4OvT3GW/CP54t1gsXi9Fe3WeY/3icZMQHMK4dyLSlyAEGA==","shasum":"755d1c4a2d5ce17f9088e52f14ce07d10ff908ad","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.26ead46b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBQmlqY3Gqa7AhnPA5bmJIm0yv/Eht1Av4f/ABPGhP2IAiEA2uxTiSsGn/FwcDcFazmbgwzKABZx0bByX6dewJpFwQc="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.26ead46b.tgz_1516573152645_0.6100188118871301"},"directories":{}},"1.1.0-alpha.67392dee":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.67392dee","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.67392dee","@crave/farmblocks-hoc-input":"^1.1.0-alpha.67392dee"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.67392dee","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-l9JPp5d4Axk5bGixyRTGmPGlUIok1k7gVmjLsX9owTVPQi+Zn66zQvp986osusohOAyHpPC0nTV3LC/iaRpkqw==","shasum":"2e690b7a75034565563318a1620790676e350987","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.67392dee.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDbF9FShcK6n1wb5qhKoXBf81pefhFVIwLJHPyRNv4XgIgPLzjkQErH1BLogFUvyZyIinDehJ2rhRgad6iQJTxN9I="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.67392dee.tgz_1516573168173_0.5220853530336171"},"directories":{}},"1.1.0-alpha.cc6afb85":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.cc6afb85","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.cc6afb85","@crave/farmblocks-hoc-input":"^1.1.0-alpha.cc6afb85"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.cc6afb85","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Uilk0lHU36FwEeyrijl25Bb4rhKLSremFAL5wMAYoQItuclOTconEOUC1QaxLdRHnfrrXtw1KBC3oMoTjK8sTw==","shasum":"3c0b715baf94535e2a3d3a97912f984989e12797","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.cc6afb85.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBxXQSwmdbgQiqG5AD5SGWU2B2oCZHXYkcmdlo67NWagIgMmjaEer2h0+z6VTdSzT2Yq9y1/mXXrlt5/KCVWD5smY="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.cc6afb85.tgz_1516632167190_0.9503434842918068"},"directories":{}},"1.1.0-alpha.1bc89e42":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.1bc89e42","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.1bc89e42","@crave/farmblocks-hoc-input":"^1.1.0-alpha.1bc89e42"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.1bc89e42","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-2LufzJ/fJXXfHLfdabdqMqesnF14a5k4SEc9ZzpyA2a60Q7WATXhHggdsqBU1JvYtcoYOyWak+D7/iKrx8MT8Q==","shasum":"732c86f3090fa0fd3ad32f588be8c59bc36c2e35","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.1bc89e42.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5UkQD+b5+xGqfyIjEFTTHs2A1PYBtoZsy+YrnBzysrgIhAPwzsf81tqddJPhGeg6AxLp1OC+bV2jxZNCjYZknuf95"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.1bc89e42.tgz_1516634275028_0.11699756025336683"},"directories":{}},"1.1.0-alpha.bc5712cc":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.bc5712cc","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.bc5712cc","@crave/farmblocks-hoc-input":"^1.1.0-alpha.bc5712cc"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.bc5712cc","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-sr0iOM8JBY14atPARn1SLaWnORG7V2hNruooQhuuPsNeGvfoejCxrLh+etnL7+eIGTHKKx8P98DYslvw2mB9dg==","shasum":"f272604db10543980e0313314e2cdb9e2645c6e0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.bc5712cc.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICFXJGA+b3Z5uHDIKBr2MH6ZJRDj5r+zBYGpbvFB6pP8AiAQ3WRb0DQi9obuWXNmK0Xj8pajbg1IEAxGqwOXlqJEiQ=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.bc5712cc.tgz_1516648081198_0.5559256339911371"},"directories":{}},"1.1.0-alpha.7302ebb3":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.7302ebb3","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.7302ebb3","@crave/farmblocks-hoc-input":"^1.1.0-alpha.7302ebb3"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.7302ebb3","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-SSfdMWEelZrG/M5BKvAXZqT+90NzHkxs21yoUg07ZgnEdX5j+ZAs92DRhN+r1HpMmhyuBPT0EpTkeyol3lRuWA==","shasum":"7d3391301197d20c5d1a0faf709cf26753d8a23a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.7302ebb3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICfo0ylIe7usF6xX+ue3PObd5dETqVEmIith/bKistUqAiEAlCfdUc8kBU9ZMKPPfLNeJSgBfNZ4O9HXqCUp43tsehk="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.7302ebb3.tgz_1516710216066_0.6829475823324174"},"directories":{}},"1.1.0-alpha.4e7595c8":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.4e7595c8","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.4e7595c8","@crave/farmblocks-hoc-input":"^1.1.0-alpha.4e7595c8"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.4e7595c8","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-qtr1RYg85osTdaxLBiuHPFe2PMrLwgrBmqVuB6WNTz9yNO93tBJ8Xk3Nf0Ilajy9OuZJsvRc0Z3eVvsJ1nIq+g==","shasum":"443270e8062dcd883b298c357e3c3db3ed9f56bc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.4e7595c8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDgR8nTAsOlhqt0hs30FrYLUDqkqulWt+0RNW1T3creRAiEAy/jag4G9wCoVsynANlyXy6ubXx0urIhfiWFFkcECB/Y="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.4e7595c8.tgz_1516723484694_0.9524230139795691"},"directories":{}},"1.1.0-alpha.e6a26cb9":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.e6a26cb9","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.e6a26cb9","@crave/farmblocks-hoc-input":"^1.1.0-alpha.e6a26cb9"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.e6a26cb9","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-xcQPZsxqduee6Fg50iS1F5xZCcPMIYvtgtoO3k4n8B9TBsXVVKguGaryj35fiVthSuNMgH7ZpS2nV/ASALCWzA==","shasum":"1a3cb0d634ce35fbb4f05cfd58ee43f805919004","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.e6a26cb9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5CH/TfWAMDSPleSvanC7j0HrC/50O2mDSZHvfoMq/LgIgA4i/Z400XZxYJaFAMLkV5acyFIFCkrP+D7Q2N312qNE="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.e6a26cb9.tgz_1516724541505_0.17121377494186163"},"directories":{}},"1.1.0-alpha.2c979b0a":{"name":"@crave/farmblocks-input-text","version":"1.1.0-alpha.2c979b0a","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.2c979b0a","@crave/farmblocks-hoc-input":"^1.1.0-alpha.2c979b0a"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0-alpha.2c979b0a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-iiPqwVvHJwYJxvkuDptfsWP8ps2A7Zw2hJsBrNjDtUsSzewrujylFTs6Ixh07+sZpPBxqYTS06VERlIXjUEoLQ==","shasum":"48e166cfe2cc7c874d16c29587fa9a4c712af4c9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0-alpha.2c979b0a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDdijJ1ptBnwKnU22dq7YqaxLRJY13VmJ2nfGIgRX5fbAiAW469N7t6M063aGIjUyWQU9gqu677Hcp3nrgz69OUGQA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0-alpha.2c979b0a.tgz_1516728440934_0.8485344664659351"},"directories":{}},"1.1.0":{"name":"@crave/farmblocks-input-text","version":"1.1.0","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.0.0","@crave/farmblocks-hoc-input":"^1.1.0"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-znxZFXqV3HPLYpBfsSggzrX5EOLX02RJsmRv4nWp2TUVeZXWiXa1OcvxHUj68lW5K2cvLnJwyad/IGIn5RrWJg==","shasum":"3b1cbfc3912733d8de8c2575626d3d356fceaac5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFq+0Ww19Gn9bS6XqjtWCAV6rxnXG+TWAcXrLU2h1G90AiAT759Qjn3gEtepH2r4h/6BYOXXU8INOHE9N0zWz5jhlg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.0.tgz_1516728844565_0.2486870982684195"},"directories":{}},"1.2.0-alpha.3c32b1cb":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.3c32b1cb","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.3c32b1cb","@crave/farmblocks-hoc-input":"^1.2.0-alpha.3c32b1cb"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.3c32b1cb","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ducfRy12OMu0IzgfnYQ34CwYfA5uuQPnla7lLsShR3jKbY1nQs9XL8Du4WnmXnubxZIh7nNHZnXsoghtQCczNw==","shasum":"6517ed6a7efb007e88928c8366650846d910db1a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.3c32b1cb.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHneVrzOy7RricJBPyLBuBZpZ5w4dINzwgWjnldwh3IeAiAdQqQTYaKp2R1gS3i42iDL7IIBbmMskLshOxOBbsjp4g=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.3c32b1cb.tgz_1516823072728_0.47803240129724145"},"directories":{}},"1.2.0-alpha.86be4ec4":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.86be4ec4","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.86be4ec4","@crave/farmblocks-hoc-input":"^1.2.0-alpha.86be4ec4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.86be4ec4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-AgEVXPwyr7/eBYnWjGg1IHBg3BrlkwxN2n/C41VI/PQ2BL6yqLEmhCWKFXjL/ndeI0zI1rwzfHjwzOH52H3GgQ==","shasum":"19e49dfa4f04e3c0d9025b968d23a17ce560dfe8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.86be4ec4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAXeRuYWOhIV8kVz41OtDiUEov7TOC/hTfNexfoG53GPAiBPsCh78oibIf4Y6oMsEh/YQ3BHtUqeKf+gauvOfx0XjQ=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.86be4ec4.tgz_1516885504967_0.6665188281331211"},"directories":{}},"1.2.0-alpha.65457599":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.65457599","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.65457599","@crave/farmblocks-hoc-input":"^1.2.0-alpha.65457599"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.65457599","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-pmvrxqFR0mOHfIYjIX28r8aJj+L9pYEuT+XK7Bbr63QuqCJ5PWvjPW0OlmclSJ5qtiaoDr5wKMSHAnGvXKr0SA==","shasum":"27028e13d54e6ae5f5cd92b667b558342f4d14b0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.65457599.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHTJVZMB9n0x12cP6/98GYaa+z5N9PWQTEGhUrSXquTOAiEAvu3XmDFhJoUq4kGw29slHrI7T8vjvPU2ntxMBEwLiCo="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.65457599.tgz_1516887196980_0.4567079844418913"},"directories":{}},"1.2.0-alpha.b29e8642":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.b29e8642","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.b29e8642","@crave/farmblocks-hoc-input":"^1.2.0-alpha.b29e8642"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.b29e8642","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-5BDCej/jKiB2VBbKv0fcDB1Xp/YRamHHtonmpr6BpY1IGVL4QzruvsDS31Xam+WiL161e9fUbB/uvMIcup2jVA==","shasum":"9c5b748a247a7614e244282d03db367d82646406","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.b29e8642.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGYysrLZoGSerTB7Supdu7UxiOdblkHed3NOn4ZUI9YNAiEA3OGd0lN7BIFIR5ULtjCFjLwCXKjvCXbj7sYiScmZQio="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.b29e8642.tgz_1516887728703_0.6339100254699588"},"directories":{}},"1.2.0-alpha.c7705635":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.c7705635","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.c7705635","@crave/farmblocks-hoc-input":"^1.2.0-alpha.c7705635"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.c7705635","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-tgVFKU4Qf3t4b24KVnrytWvRnUd7vdKyROAxDBFElo+COxUlSt43vncj4qZQaoVbLPpLw95IjEtay7YAVj68Gw==","shasum":"e64b581f346c93dd0e2b47ba66ac2534ad30f782","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.c7705635.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCY/C8MGfu8dCAQsNp31zX14EW/IdtSlDZ9QAdMaAlq9AIgL2rVuVJ8nshof6el6WMbA+LLt8GeW5Ag6+H0SqJ4zBM="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.c7705635.tgz_1516900064421_0.0020399047061800957"},"directories":{}},"1.2.0-alpha.7c95d821":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.7c95d821","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.7c95d821","@crave/farmblocks-hoc-input":"^1.2.0-alpha.7c95d821"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.7c95d821","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-NqGDEtARMXO9XcypAPN9PnrbGzyIthIkE4EI/1xeNJl+1n+3QkwKpxx9HKQ/nzAEHmsFWNrzH/5VvEQyWUGHMQ==","shasum":"15260a010ef760303cacd825a5983f6e88495c20","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.7c95d821.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUcj8O1jrgjXLJpnoBNo5BXynzf04vkxCeeAo0VZ2ZCgIgJD3d51XikDAfXUIImxyy5Y9YNA+1mlFRUtg515n6TtQ="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.7c95d821.tgz_1516976442801_0.6455617705360055"},"directories":{}},"1.2.0-alpha.ddb299e4":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.ddb299e4","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.ddb299e4","@crave/farmblocks-hoc-input":"^1.2.0-alpha.ddb299e4"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.ddb299e4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-UouyeQzYah+LB/Ds0QCAi3i5D/4uyJlF7j8v5Iro5A+cQjV45UVqOcQksdJP9IIeBv+LmNZDSpPoML/NRZgH1Q==","shasum":"7aacef0459d617bcac388fbaa7a9fbcef3c0ceee","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.ddb299e4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGcLQo53aNh99MoCFXVeDerynN66KkVlgjMU7VCm9X+yAiBgCkIBWEm3veTHWkjyydQkuxIQwV2XsNBIasIu2GwYhA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.ddb299e4.tgz_1516991135959_0.937725841999054"},"directories":{}},"1.2.0-alpha.01d1bedb":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.01d1bedb","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.01d1bedb","@crave/farmblocks-hoc-input":"^1.2.0-alpha.01d1bedb"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.01d1bedb","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-GfNmrvssVppbGc2meOTJiTL8v7FSQt7vnpGdTdPZALKMBWCk5VXI52XdEze2iUn6U2nAZCKuoae8FT+7x5Eplw==","shasum":"b1da36909ff1e1d429ce43beb2623a3d81b5e9ac","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.01d1bedb.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC0roRbzAsAR6Nj2aDEiaIDPIcgBl2P2clbgd/w7KWeyAiACYoT/oBErYdtYUrEONoRQgQtvFx6q8Jd5pUA6YkEwAw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.01d1bedb.tgz_1516994363473_0.8129179824609309"},"directories":{}},"1.2.0-alpha.dabda2fc":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.dabda2fc","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.dabda2fc","@crave/farmblocks-hoc-input":"^1.2.0-alpha.dabda2fc"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.dabda2fc","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-LRG5nrWvjjwa0a2n8cjl8e6TCdT4GmlBtEOa9ca+gJZDXdOaBQl7X5jGFB4jdsgdwuhcwuEddmqB15l1b6yfow==","shasum":"9c198e1ccfc65e7eb4ab59e144c7d883832300d7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.dabda2fc.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFf6ppja/8prUkTAD3SjW2jTj1gkProSEB2Jteztef1TAiEA/CPLbYJO37L/NDai5pHa4EsPxWzN7k6UHfAQJSUYTrw="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.dabda2fc.tgz_1516995697987_0.12262568389996886"},"directories":{}},"1.2.0-alpha.adc7db47":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.adc7db47","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.adc7db47","@crave/farmblocks-hoc-input":"^1.2.0-alpha.adc7db47"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.adc7db47","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-aiqHvHV/Ef/ntUnk2Q6sXF9H+812VyMFCfeascMShz0gf2w4AcmLb98lT4T2OYoST/pUDMk76SNNCiNUFOG6qw==","shasum":"238ea1775fd3f213863b2cd66d6954ab1953fab5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.adc7db47.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICwBu1cgE1yT70Oixp8F4AZMF4zAQkLR677KbYndDA/lAiBQyTP4HFOpAzUu7UGryw4et4w4VNl9nQp+3RhACX+QPA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.adc7db47.tgz_1516998734822_0.6027889987453818"},"directories":{}},"1.2.0-alpha.a6f9ff6e":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.a6f9ff6e","description":"A form field to input simple text","author":{"name":"Crave Food Services and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.a6f9ff6e","@crave/farmblocks-hoc-input":"^1.2.0-alpha.a6f9ff6e"},"contributors":[{"name":"Crave Food Services:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.a6f9ff6e","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-oO2ggxecinIXwdQe7q+006kol7RU11JGKus1jLpN+5YouL8pHYuKncQiYBf+1Nmd0JWepGWCsRJd6DfGtSpGtQ==","shasum":"2a852207a12f23645263e41e8366206a86e35be7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.a6f9ff6e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA6SxK+mp4g9mDoOEymhrKKp+5yKLx4QJrBfxpADqyWfAiBtb76MRJZafuSdlKQaPX3uzxYVyuoQOjAMv5TpLTgGXw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.a6f9ff6e.tgz_1517230587141_0.5894493532832712"},"directories":{}},"1.2.0-alpha.248886ac":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.248886ac","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.248886ac","@crave/farmblocks-hoc-input":"^1.2.0-alpha.248886ac"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.248886ac","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-wOvhNCzmVMPuPdgSNvCUlDdoNbL8XLoDWrEa1RF7VcIoKIYdRCv+Fditkt2/NxBmzgKnotED4NPBH0xsQBoBRQ==","shasum":"8555e6f82933372d6dc98fdc896354ced47c61ea","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.248886ac.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFE8WuYZDsPsVOvdj0yKT8Dw7QYBvDYBgdhaOHPF20lrAiAynTDS5HbR6cfqeZf6YLofflXZJ/eHR6XPISdpva5sNg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.248886ac.tgz_1517231170657_0.45150805939920247"},"directories":{}},"1.2.0-alpha.89947df1":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.89947df1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.89947df1","@crave/farmblocks-hoc-input":"^1.2.0-alpha.89947df1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.89947df1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-9XIIS7KKOmTjRDw3skuyqv3GfvXAjJ2ZtBE/e053hQiMuk6us311Ay7MwGKmpgEYrqUh5gLkQEghr9irwZanIg==","shasum":"9f71f79f3ac35a9e2c7bf511658aee7d8160c265","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.89947df1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFj+AXLqVXZN5q81ZcAZTfhvXXTFyiQ9Lv+fOH5uZs4UAiBYtCSnyRn9YsQFRKM0tv97B6TZfEzj56MEF9oLG8/BmQ=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.89947df1.tgz_1517233764835_0.4547045056242496"},"directories":{}},"1.1.1":{"name":"@crave/farmblocks-input-text","version":"1.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.0.1","@crave/farmblocks-hoc-input":"^1.1.1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-KzUXa5EjmSzqDw/ydJp4Tm+5Y/wEJkb5k1pKj2f+W4T3jolsTAqSGI3BZvpBefXGuP0cpAbMN0kz9A1E6MPZBw==","shasum":"d39e0fdba3c7fad82ca232a27804641f8dcec427","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjVQ0mC9EfA0EPkbGDCrE8khXS5iiTvT9pLe/iAA//LgIhAIQWgUd2yhOfGqT+qxeVCfm0KYt2o3OAQ2770b8Qm/B1"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.1.1.tgz_1517240754092_0.751512992195785"},"directories":{}},"1.2.0-alpha.4ae95cd3":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.4ae95cd3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.4ae95cd3","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4ae95cd3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.4ae95cd3","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-vPGbqfbZvD3IBbPNhg+U0AulCcRpMq/MwsJjgrjujnBsgNEq9q06OwDrHUpCwP50sA4AnafC6G17N1vqaOru2w==","shasum":"7cfcb02e2102c9fdf9b86758e4611d07e35995f7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.4ae95cd3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGv1E2kt+hhhZXTkI0Tk3RfrxvtfRpyAecdgSYo/5y7QIhAKn6dClTWwMFLspVt1Czf/iEnlzPBIpb+Upku9vvq4xg"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.4ae95cd3.tgz_1517340118192_0.38365031220018864"},"directories":{}},"1.2.0-alpha.8bed828f":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.8bed828f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.8bed828f","@crave/farmblocks-hoc-input":"^1.2.0-alpha.8bed828f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.8bed828f","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-cdh/LOecCfQY3k4VE+zmFAL8gVew9eZN7yxiJkb9o2JhWhkQGWf/lvQXP0AilpdsNyJLHdTWNRJRx/CEugvsEw==","shasum":"a31d3e37ed2ee14e80db9a1c81ca2b5178d7d97d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.8bed828f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDRuOXGEAQnbqVM1wINdLfXr1SeOHoC6oPBZBF7C+PNogIhAKlb0fACj12cxGWJ0HcH3YRy7gMEOuJMufidiZOu48fV"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.8bed828f.tgz_1517513746643_0.5895770250353962"},"directories":{}},"1.2.0-alpha.7a6345d0":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.7a6345d0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.7a6345d0","@crave/farmblocks-hoc-input":"^1.2.0-alpha.7a6345d0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.7a6345d0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-n1LOUu32XcOo56v9XYgDMDC6+HI/KNsbEVekWEqgKHL8noQLAa8wX0vfbDIjU3ozGw1T4OQnTU6dNRZWy/Y6aw==","shasum":"53a12f074e6bf7d2ae1d129c68294a781f00b962","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.7a6345d0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIClyP8/oMtght5/zmTgniu1KMlzDWNHhhQ1u/PIh/viKAiEAmWoGVKt4PLAE+Rwd+DB2bvAIGFOwlvXdhKO8vd+1pFw="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.7a6345d0.tgz_1517516212304_0.8846831966657192"},"directories":{}},"1.2.0-alpha.f0847fe4":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.f0847fe4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.f0847fe4","@crave/farmblocks-hoc-input":"^1.2.0-alpha.f0847fe4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.f0847fe4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-K4AJU9NkKW3mS90ncFo5rQ/7tmN7OgUFRKwd1su+HPixZB1vb00o6B0rCmqNYKQClYbD8AwV+7l0q3jTH8xCAw==","shasum":"9df36a2fb2b8be5a4f2fc09c0098f3a3cbc6af82","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.f0847fe4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAnLR1s3WbjsLBT8EwxlPdyiNSbOIHMj1ZD7K13f6JGMAiEA8hL/1VtBfRt/VsjtlHSXm0p1TlUx/oSBXPSQaQ5BYBI="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.f0847fe4.tgz_1517567417369_0.3590875887311995"},"directories":{}},"1.2.0-alpha.d2f9c44a":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.d2f9c44a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.d2f9c44a","@crave/farmblocks-hoc-input":"^1.2.0-alpha.d2f9c44a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.d2f9c44a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-MDbfES/uwzcjvuO7vYaIQgbj/evVEk7fpNemxZEzLrA6sGzkuaeUgmGAJmsS5VV0HMwa10RyggPhdUUe3mmrdw==","shasum":"a49139fff895918f031840ff48bef9860f41ccf7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.d2f9c44a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFLc1AvH8tIpzCLTi0LjzGrLgCAZJPzFFmmXyEhni1m6AiEAijlcHMhlsDMLB/7TMYEB5D75k0RF0TVZeVhXwyaipWg="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.d2f9c44a.tgz_1517569524632_0.507735152496025"},"directories":{}},"1.2.0-alpha.81525f03":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.81525f03","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.81525f03","@crave/farmblocks-hoc-input":"^1.2.0-alpha.81525f03"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.81525f03","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-WSXRCALgKRVcDwr4+odfENyawTT68/HQNqCq/INNCBluxx7zy+xUXa5IgcNctLXnRj8xsFWjWyORDut+JFG59A==","shasum":"418d575e674af50f377896c0391a4bbf1d9f1db6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.81525f03.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICjHI98hMoGqrhcvnG1+9chZNMKTqt1QBYUkVhf/UvMsAiBuoCDkWoD2G6xYrhqlHLzzKmFRNO8UxMNUHxvEgwAvew=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.81525f03.tgz_1517574456174_0.01879713824018836"},"directories":{}},"1.2.0-alpha.1d453a48":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.1d453a48","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.1d453a48","@crave/farmblocks-hoc-input":"^1.2.0-alpha.1d453a48"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.1d453a48","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-h9ujNdvmYvcb8b3LxzoKDsdNi2L4U68rBhm6YtU1/4fpmH22tTYXTGARkSFrYTpuO1cnKR8bqz4q+JZDbSGQJA==","shasum":"b7a18d8187bf51917aeab21a6ecedf7bed176839","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.1d453a48.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDOUBWDgwNiPVsLG9pbKW+Qc/gc4/8JL1zeizxWX+CI9QIgSoCGqBb8NL5rafCDe5SrawspDG3nuntGe7U3caCgBQY="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.1d453a48.tgz_1517588236323_0.9576127442996949"},"directories":{}},"1.2.0-alpha.1d964d63":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.1d964d63","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.1d964d63","@crave/farmblocks-hoc-input":"^1.2.0-alpha.1d964d63"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.1d964d63","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-xDkxY8s/pl03won9YGxBqHNC/re13LnIp89GHC9S0M+pywDua5g8IwLkQ96wnP/7iBeZcPKBZjK9O9qLzMw42A==","shasum":"d1b18e8fc66bd838a5d591e3d6e583f548f6bf4d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.1d964d63.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDEImDX9bYhakbdYEgnkcdecynpLf/INIExsnOPFc/J0AiAVF52d2t5HCK2rTovgvmDyiVK4CQm+Dkhlm/JvayW6Sw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.1d964d63.tgz_1517593618590_0.4585054540075362"},"directories":{}},"1.2.0-alpha.06e7a5b8":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.06e7a5b8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.06e7a5b8","@crave/farmblocks-hoc-input":"^1.2.0-alpha.06e7a5b8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.06e7a5b8","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-EoVkdZSm9HuzBDG6R3kxmy6cvQFBMGtqD1AOP16kxnZn6OrNtx9zyZpVM+tfmJzpgAe3cktWCf0WZeZ5vqFf7Q==","shasum":"c738a75138a5b5dabb9c6a158196e7103a9e96fa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.06e7a5b8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGfBMWMjJ3GdNgZnDARl7W3eZdZ99nFHNj678FUpuGm/AiEA9S2+YMgvGTXsaPIxUEn1qmLqEBVJwyQx7mqdPgDs0sU="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.06e7a5b8.tgz_1517823335841_0.7522256711963564"},"directories":{}},"1.2.0-alpha.2aef1aa2":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.2aef1aa2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.2aef1aa2","@crave/farmblocks-hoc-input":"^1.2.0-alpha.2aef1aa2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.2aef1aa2","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-pq/IwwHuYH67IcobolW1nkqmAscKbNAOfqh7EBdIhbHMMZxiiUTbRrUofkUjzMn9FUt13Hztm+o6I7oiBsD8lA==","shasum":"d69f2f87722ad65ab5f2d9b1064cd8d1e2d25458","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.2aef1aa2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDEU/AFrjZZw/QgwWGRQGSbJvX4IWx++PYeEHEt9UHHfAiAC6SfEZeFCR5QV5hrS7MejORlJdZp1alT89ybreaZNVg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.2aef1aa2.tgz_1517823519711_0.9924401955213398"},"directories":{}},"1.2.0-alpha.a68e0700":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.a68e0700","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.a68e0700","@crave/farmblocks-hoc-input":"^1.2.0-alpha.a68e0700"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.a68e0700","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-H+tpPvSjc4gI1jvhjM6Z8CfIe5m32r4P5FWCVHtvbCgPCfEZs3GuPTEPChfwQmS7crKDdyo44bpyOcIdWAe5VQ==","shasum":"3ac458a25ce37398b142f836f1713c46ac842527","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.a68e0700.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFxiGEej7op/2lBnoryDPS5QaDCSrVdpJcI/2/vqDLFWAiEAy6asA0qCkOC66G4Do4FkMUmi4fQBRHAIeD8K7qjzikQ="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.a68e0700.tgz_1517841630802_0.9084521951153874"},"directories":{}},"1.2.0-alpha.bb2ec3b6":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.bb2ec3b6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.bb2ec3b6","@crave/farmblocks-hoc-input":"^1.2.0-alpha.bb2ec3b6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.bb2ec3b6","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-BMLvcDs0qoBpBYJ+ASxHJLwdleeytxpN0Ih3dwZZxD97IwCmci5CC3lfchlyP2+yeW7CUHTwnABnZ4x5jFzPgQ==","shasum":"fd8ba7dfa8e508d26ff29731174012b6e539be5e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.bb2ec3b6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCIuBd19Ow/gLtgP3Xj2emecdJ6uk1JVZM/+gFc1O4Z/AIgZJCJ/WwM69VmYjyvaieoXmY+m0e9+EfnY9oVYLq4HUE="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.bb2ec3b6.tgz_1517841809100_0.5313886825460941"},"directories":{}},"1.2.0-alpha.f79f943a":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.f79f943a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.f79f943a","@crave/farmblocks-hoc-input":"^1.2.0-alpha.f79f943a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.f79f943a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-jfGce4e1/wMC4yH9ghqZ3m3hEBABlR+MT2u0WgA6k0ykpWMMOrndckRdQmDQK/YWTyczyRsbgkXRMYp/oN79Hw==","shasum":"44bb3a61be036ca6ca5a17a2a10db9cc20044c82","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.f79f943a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID+sfyeKj2qjYv92cYI1GAxq/tu9ZtFje3LpnmGbdlLUAiAXGZUonrMKqZGiq9zNtE3Zmt133H5mh23vPY8HMfweAA=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.f79f943a.tgz_1517848706123_0.3758728210814297"},"directories":{}},"1.2.0-alpha.ce51f213":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.ce51f213","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.ce51f213","@crave/farmblocks-hoc-input":"^1.2.0-alpha.ce51f213"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.ce51f213","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-W6zIM/VNHdBj9drjgOuGlSJTvrSxSopOy9DZrUvrQ38WDaEtSGNleYW9eQVi4VLcA0PcFS5EdmHdX7U9PDALpw==","shasum":"d52e14c600b76504486d9f57dc3f183a8d17738b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.ce51f213.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHiqkSb7dDtkNz7T/d+v2p8GBeEBlwOjT4EQIgpsFpiPAiBn5HkfqEfQN58ak90zkISGZvUxMdxbIT4OUWzeUyz8rQ=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.ce51f213.tgz_1517849432001_0.6034637128468603"},"directories":{}},"1.2.0-alpha.3134216a":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.3134216a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.3134216a","@crave/farmblocks-hoc-input":"^1.2.0-alpha.3134216a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.3134216a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-7YFCRazsJGp8eCbwWaAxc7Z8JqfvSHKgzca4T142MRYKxiVGcG0E8xz6QBsSW7hqXf7CTVtwFT4ghBugMQSxrA==","shasum":"ce2942aad5feaf09b29177cf5a9edacaf1945ea0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.3134216a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDcBzEfHZqSDaiTQWgqaALwoYwffEv7h6uShZzVb/aD1wIhAOWfR/k1y/AGjls3SPrxsJa20Q7UQNTDRF+LvwDyWiKA"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.3134216a.tgz_1517850062797_0.9087980871554464"},"directories":{}},"1.2.0-alpha.801437d8":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.801437d8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.801437d8","@crave/farmblocks-hoc-input":"^1.2.0-alpha.801437d8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.801437d8","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-OFA7TGgV+yyE5Cy4i4CX0W6f9iRalwiVMQSbnTx25Nq2/RH6mS2aSC8h8AmPTIoyWFM+eJkGZMRzkeC1d/dV5w==","shasum":"af593e6519207405708d1698385838be36a65a97","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.801437d8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFSXGRndBcFIIGUcuUyYuGiUIfM9gQh+83Vr8xblfhAsAiB39PY/wXpaAuUVe9twzEvAZylonuZGAYSS765IPlcJfw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.801437d8.tgz_1517941800144_0.5011954377405345"},"directories":{}},"1.2.0-alpha.9b1c1d2e":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.9b1c1d2e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.9b1c1d2e","@crave/farmblocks-hoc-input":"^1.2.0-alpha.9b1c1d2e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.9b1c1d2e","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-dW+7FR49h7BiUKQcnxfCBtdtksGQMsaeCvCF7L4NS6ouwHXsKAAA7QcNUEQvkVIX1B+pC41lKI0uxRLpN0kfBA==","shasum":"ea5702cbed58b008f54ce864f5c3def0805aaff6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.9b1c1d2e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF1z5yQssx9PtKgyKN9UYufDFst6HNYLSPDIQ/HeRTwPAiB53Y+vivVk5bk2HUyo2+y+knIAMJb2fv2ReoBcACcIYw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.9b1c1d2e.tgz_1517942016499_0.6845212401822209"},"directories":{}},"1.2.0-alpha.cc1489f2":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.cc1489f2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.cc1489f2","@crave/farmblocks-hoc-input":"^1.2.0-alpha.cc1489f2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.cc1489f2","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-RewOfaKdmgBreweIlSV1i1KQ7d7EPL8TE3Nqq3WRGgIjQVaTYpUOa/NC2V3kADyWg44fi6qNnW4i9ncm0CRJfg==","shasum":"d85de0965fc8b70576eea6b6dde6aa5e78c57c8a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.cc1489f2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeTCvSbxViTv7pubfDRh5WMcwVKTy5Mtntm9FTCnluLQIhAPsNY1eVapk0G5xLIXrpfihH5oW1csPCBYA3FYXM7gwD"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.cc1489f2.tgz_1517942217538_0.9413923812098801"},"directories":{}},"1.2.0-alpha.4b468a5d":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.4b468a5d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.4b468a5d","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.4b468a5d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-OqxBy1tHGBh/R/CG36ahsE0/vTghghxm4FkrTI7u9KMnE+AAgfFeYYSDZs0YyNhEnziHWZrmLLLZevQ3aH9hfA==","shasum":"589784862e5a791675582395b1f89efeafe36bd1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.4b468a5d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCUahtZBQlrqTWFxmblDtbUqorOpuiB2aFa+i5qIy6osQIhAISz5pDgAKGl4jfFQJSVEKoHEEHAGf3uemeDiBNXh84+"}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.4b468a5d.tgz_1517944609273_0.672685232013464"},"directories":{}},"1.2.0-alpha.0572d73d":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.0572d73d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.0572d73d","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.0572d73d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-JGw8tiVk3qJSuKg1XASp11s+YQLYLzpuCpqNR4iYtPj6GYo/ZvsQ1KRud3ILxsr9TydrKZNTh5qZ1m8n2vB08Q==","shasum":"62c3f0e0c17caed43ea8fd5676399c608a61fdb7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.0572d73d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC9u2TBBZp1VfHzd0ThUDjHE35RCuk05NZ/TyS/APbRcAiACdrmz8PnRssYfhtU3Ezoy9T9QiExfF+E7S8g2h5fjTg=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.0572d73d.tgz_1517945394004_0.03140459698624909"},"directories":{}},"1.2.0-alpha.cedbd9c5":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.cedbd9c5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.cedbd9c5","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.cedbd9c5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-9nvonKQZ7GaY0HfiHLjOldMcYc5+9NwMbE03Agxnlln+ssgQZF1Dq0anjdnHcR9wWxLdMhbQzWDpqgpMIRAHfA==","shasum":"27a8b64ad2db028f412d6843782482438360a4b9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.cedbd9c5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDl9ZyXodA8JFqMlTEVhuWNAQ8dhTxP28akMiSykaiDGAiBIAYed6UZ6j5nBt4Jxr+XytDKkh0DoSVycdHrJWOmrnw=="}]},"maintainers":[{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text-1.2.0-alpha.cedbd9c5.tgz_1517947428393_0.741911893710494"},"directories":{}},"1.2.0-alpha.6521802b":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.6521802b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.6521802b","@crave/farmblocks-hoc-input":"^1.2.0-alpha.6521802b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.6521802b","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-67Sh72sHQtKHs+2CXI/HmY9RVEv+riYzwPKOPVox7ExxuNMX7WbvwXdqJh8eNVEKgjHq66At6kO4CGvIvNUr6A==","shasum":"c87bce2a080d1e40393756340547bb11deebba63","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.6521802b.tgz","fileCount":9,"unpackedSize":20380,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAYKNlbr6jOw45bivhBKIwEZcPFxVHFq3im8ySBBrLAhAiEA20LKjKFJfHzoIKg+5LEsQnxuYfMoX82C7iYsYCyMbck="}]},"maintainers":[{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"fczuardi","email":"fabricio@fabricio.org"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.6521802b_1517968739959_0.7207121433928481"},"_hasShrinkwrap":false},"1.2.0-alpha.171ee1d4":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.171ee1d4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.171ee1d4","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.171ee1d4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-IaZUCb7n/OgZAIr+IA5z9/tT4y4VkXSvRxtbrRVCRLJoiC0LGmM/g2LlqdO/aORDYi48fB5uEE6y/QCsuN1M0g==","shasum":"17e4fb1755b0821ca5f3c83480e27e676977677b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.171ee1d4.tgz","fileCount":9,"unpackedSize":20457,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDa73i5UARQIQeCF5T37dVkyhgURjbtN93pG8MKEVzDCAIhANHu4EH4jgpZtoi+UXe/CYd5au2HH10M/d0eOOUrudeh"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.171ee1d4_1518011823072_0.8681066150761498"},"_hasShrinkwrap":false},"1.2.0-alpha.2820f6a8":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.2820f6a8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.2820f6a8","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.2820f6a8","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-2p8+S2GzOYBRnzxEh125Ne5u9U4uXaA+9oDTmq0VyFpP+pSZwOgmHy4wgkPLu10p2MvGy3G079lVUsmjfsRZqw==","shasum":"4c3d4933c8edad42ac3e085d7e13f92ae97a68a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.2820f6a8.tgz","fileCount":9,"unpackedSize":20457,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGlkkRv6Fr64Ecjr6bJgWDRcypydPhuhlk/8i2qN1sWwIhAOEYt69srDXxywzH5NnpiuTNsB733YMer5YMA/SNg2yv"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.2820f6a8_1518015166692_0.18599448504212823"},"_hasShrinkwrap":false},"1.2.0-alpha.6fe9f75e":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.6fe9f75e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.6fe9f75e","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.6fe9f75e","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-l3d6H+B0BHf0DYRtgN3GeHSsk/RdAK7aWk2EbUM+Swa3rOKOBX8LVCDhiOvMHicEjCv2BSfqhiUwA81GAQVTFQ==","shasum":"08886df218e987ead286eeefbe873da197899b35","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.6fe9f75e.tgz","fileCount":9,"unpackedSize":20457,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDsqqV+fMGg2qD4Yrmc7Um4KutlrFfh1Dt51T3uQzxhbQIhAOAffLwjxuR/qqW45oXCpp9BDSFn5WXtbHkbIjVY4Y/e"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.6fe9f75e_1518018335130_0.9429252102453296"},"_hasShrinkwrap":false},"1.2.0-alpha.4e07dafd":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.4e07dafd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.4e07dafd","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.4e07dafd","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-pO8SkVyGZxBWM1TylJPeIm/VkXOwqTjj1IjoTQWqOg+i7J8wsSZ0OImmfM95wY/GZNEWfO/cxcUxHzJmI2LkTw==","shasum":"5e0db55cddc72dd509b3609d853638f4c1a7a4a9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.4e07dafd.tgz","fileCount":9,"unpackedSize":20457,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDTngEUscqikpWnDwQJJoW04778gS3NQpbowbTX5V1fuAiEAoSjfidhlIUMhKGinh6zetkvpkpSAO8hf5OGyx9RSFTQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.4e07dafd_1518019567113_0.9885009254966131"},"_hasShrinkwrap":false},"1.2.0-alpha.e9819633":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.e9819633","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.e9819633","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.e9819633","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-FqVysAb0hNZhCeojxURKDf1OANTNe+5OKw4qlDCMDyhZVynTmEACYxvg8rVcU7MnNp2ar3rSo2zLC/zXVqF6JA==","shasum":"5762e2585a58e2dc699584fdcba30341bdbee76b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.e9819633.tgz","fileCount":9,"unpackedSize":20457,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICLtjFtideJhgq1zgACG11wnh6D7ykgZOUb7MwLkyE28AiEA8yP+Umw9BG0/Scwo3EQlnqOCn+8SCucHT0TUv6PZ/Ps="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.e9819633_1518020416850_0.8888005292674375"},"_hasShrinkwrap":false},"1.2.0-alpha.c2cdf8a7":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.c2cdf8a7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.c2cdf8a7","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.c2cdf8a7","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-nqlx/Ft8GRAtpyL4OTr9Veb1phSl2+MF4FPHHw1lp5AsQjzoSoSTukrWynKLrqCPd0efqk2dv9WQ1sdMmCNkNA==","shasum":"9803a42abd7b8c4166810fb3862e0d4faf1c48c1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.c2cdf8a7.tgz","fileCount":9,"unpackedSize":20457,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDrZ/qfuVUvw1LCCZq10RL5e4oCTNxXY1Bw14h1MWwBegIgAQ5qZzuyVP+w2xc0tzVgSggO2hUw3iwIawnZK+8ZLJQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.c2cdf8a7_1518027869151_0.23289814381646212"},"_hasShrinkwrap":false},"1.2.0-alpha.984fee26":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.984fee26","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.984fee26","@crave/farmblocks-hoc-input":"^1.2.0-alpha.4b468a5d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.984fee26","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Bd9SVM2Ahd6dwB5baUIDcFmYx/rCVkb8kW4S0b+I9USMrgYb6lBCrFoGIsiOvtqL6L7jjBXeFTxLFflDN3g2HA==","shasum":"17ddc86554138ead12bd9a0105612e207bd2353d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.984fee26.tgz","fileCount":9,"unpackedSize":20457,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5BSWEx11FJ8kmRCv8E5mWBVZAvw6eJx19cFdqet8XMQIgevLcCiU7oHatCnn9Bl4w3FJzh9RFe+La4hx/ngxW4vo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.984fee26_1518029606347_0.01708653666065474"},"_hasShrinkwrap":false},"1.2.0-alpha.de36eddf":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.de36eddf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.de36eddf","@crave/farmblocks-hoc-input":"^1.2.0-alpha.de36eddf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0-alpha.de36eddf","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-DGOE8PaiJ9s0TNEHmpE9OhzNGvC1lt9NAGOPzefpZMwNpOICYA4SyVtE4JA2g11u+tYJEebxnL0irPhIth4umQ==","shasum":"3f993b278b7effa289c1e73a64e53d81b593a668","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.de36eddf.tgz","fileCount":9,"unpackedSize":20380,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUBwWcz2iUc7cQxSeW0fK8qNeiujKK2htvCYCdNBziLwIhALSwJ/soQx56aIl3m6LxgpmpdIx0BqpRMbJ1+gyrF6hK"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.de36eddf_1518030394243_0.6058234377454494"},"_hasShrinkwrap":false},"1.1.2":{"name":"@crave/farmblocks-input-text","version":"1.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.0.1","@crave/farmblocks-hoc-input":"^1.2.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.2","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-9T2F7d4sNOY6+/ss16XbJljVCbOo6vFm1gBSyMqVQ4JiL/HGOKg7bPZ7F5j5md9YvDEsT2wKtj/Kffe2ZKkD7A==","shasum":"3f82fdf3456125e2af2a171b8113d9a731d713ab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.2.tgz","fileCount":9,"unpackedSize":20291,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDh95k0uJQ8ybTyW9bVGVW5e0EU3VyJxfbvoq9kWKkqQgIgDci0ZarQ+SOOru6E7JDdQ7tEc+T09iRwx6NZm2tIy/4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.1.2_1518034889477_0.15489776147016499"},"_hasShrinkwrap":false},"1.2.0-alpha.e0ecf90c":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.e0ecf90c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.e0ecf90c","@crave/farmblocks-hoc-input":"^1.2.0-alpha.e0ecf90c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.e0ecf90c","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-/QX92qec0eFgF9O0gVZVxbs8/4PgLSmU80Kr2MAfgglvpK+9zktY5ZdxFiJsCEYGwlpR3dAgH8EPjN9LrVZSJQ==","shasum":"2902ce5763b662af66198a6b2eff6437802deed5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.e0ecf90c.tgz","fileCount":9,"unpackedSize":20380,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHekNPeRJ0uLNRdVl8wpV/mNSFxSixF7a1ySF9HbPiEHAiAczuSRLuvUI+6hWpz1LMNO4TlrD3sAsb/dK8a29ZvD4g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.e0ecf90c_1518035555986_0.1784721072556441"},"_hasShrinkwrap":false},"1.2.0-alpha.5acde5e4":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.5acde5e4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.5acde5e4","@crave/farmblocks-hoc-input":"^1.3.0-alpha.5acde5e4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.5acde5e4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-K1wnGEit4t2AfQ1E5IQIWVkp7OIp/Vmi/V3oow/NRaUV8HrVehlnBZN45+BwgRGQrTsQqnMjq/j/Fo6VrKgouA==","shasum":"914492cc024495465223fcb308f7035c356d47fa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.5acde5e4.tgz","fileCount":9,"unpackedSize":20620,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDewyVlvGGav3+thqFzX8eLoyCrhiLQxtnGw55BZdM8MgIhANNtkf0vpNWW5FOBVY7F6V0QM/BDaPdxKqmmIxLGXx2R"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.5acde5e4_1518036015721_0.6748541733865776"},"_hasShrinkwrap":false},"1.2.0-alpha.73d44a88":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.73d44a88","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.73d44a88","@crave/farmblocks-hoc-input":"^1.3.0-alpha.73d44a88"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.73d44a88","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Hbk5gRrEEpAgs+dVw41TZFWWCvDj/Kvsl98ajFutEZ7PoprVcsNaVpQqYKZm45VofShtryhjSpi3+GLxyVQFfg==","shasum":"591cbb170a3ecac28a2dd1c40777591d477bfd83","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.73d44a88.tgz","fileCount":9,"unpackedSize":20620,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFxV/J4d+Am4DzM9SvuvJSWOZLXJOOSZ+y3vTN4x4ZwMAiEAp+vECjNdhfp3oNhlXncRGZLQrlAJwO0IEP2APNYV9KI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.73d44a88_1518036521443_0.33116274707497184"},"_hasShrinkwrap":false},"1.1.3":{"name":"@crave/farmblocks-input-text","version":"1.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.0.1","@crave/farmblocks-hoc-input":"^1.2.1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.3","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-IcSRSaYZa60oeqnn0zwSufi7tPVPdu933HKu1hXRfUWwweGm6060jG1mxE5UrDYqJ8YulqhgQihgitXxJKpuyg==","shasum":"fa19e082d9d3852aee696384c9dc8d25d5ef0bcd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.3.tgz","fileCount":9,"unpackedSize":20531,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDrYUr0lM9ZQgbdbE0Ie+oVzaLRWR+BXpee3Wm4jRx1jAiBXCP6u2+KOuB4L7de/hGSseKdPCVgxfXgoQYDyw7GStw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.1.3_1518108382904_0.14239129924711236"},"_hasShrinkwrap":false},"1.2.0-alpha.97f56d1d":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.97f56d1d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.97f56d1d","@crave/farmblocks-hoc-input":"^1.3.0-alpha.97f56d1d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.97f56d1d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-CA0bXHHuxnhG32LrTC+C2EDzI7pelMZip+eSiaxHSisckBfjsORJtv/uJuZHOMUuKdtPlGBZFh9ApcD5spEY1Q==","shasum":"5c16e2606a765bd7d072ae84194f4ae3cd31bed4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.97f56d1d.tgz","fileCount":9,"unpackedSize":20860,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDiciPMHiYfz9sr81cKuXlIYDCnabu+KOwntIk14xSW+QIgcnPkwBHn7Q8FmbQZlWO17kBw25wRxS0sszEyT1Txx08="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.97f56d1d_1518176410788_0.2539112922699083"},"_hasShrinkwrap":false},"1.2.0-alpha.e80a22b5":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.e80a22b5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.e80a22b5","@crave/farmblocks-hoc-input":"^1.3.0-alpha.e80a22b5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.e80a22b5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-IrkM1dAK9WXpykpqH8EkizTd/5PdElnwDJ1P1tkQN+6pCHW7ZQ8aPU3aXh+09asa2GqkR9vkE1wb6se+4o+1Hw==","shasum":"65ead5e7df40d5d024ecb6cde2a57ec9b9e337c5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.e80a22b5.tgz","fileCount":9,"unpackedSize":20860,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHndeZvrPOcWgwbwAbVQ+DSuzDzLI9GY6oSRs57FS5AvAiAT3ct18EjK1J+BL8m9FcQVpLcNtnmAs40pZhq7PyomFA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.e80a22b5_1518177948778_0.6023983345857893"},"_hasShrinkwrap":false},"1.2.0-alpha.52cec434":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.52cec434","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.52cec434","@crave/farmblocks-hoc-input":"^1.3.0-alpha.52cec434"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.52cec434","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-7d68mvGqdyGUCIFtsklz8thUxm/vzVyva+PNFN4B1mCEUH79woYvB1ykIRKZBqHsylIyzaUUH9E0AlcmtzmsMQ==","shasum":"52cee015d0e8599b1f5abdf0df33d1c2dbcb71a5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.52cec434.tgz","fileCount":9,"unpackedSize":20860,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwbAE4WYrKuwA9pKr2dKZkoy/nL1lCUp0G2Z+QZL1XWAIgdVN3DVbSuwWWgqU0LYEhRVna1YUUeqmwLWumxVAkJ5Y="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.52cec434_1518193042734_0.7843340931265956"},"_hasShrinkwrap":false},"1.2.0-alpha.9b85ef7f":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.9b85ef7f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.9b85ef7f","@crave/farmblocks-hoc-input":"^1.3.0-alpha.9b85ef7f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.9b85ef7f","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Uwyfxkb6LIWzif1a3FDvk0UesEvQesP3ihstXgrrY5R4u5/HuRjonVKD4T11wn02tVMyEBynsoM+PQDX/vyt+A==","shasum":"c4dc3f75dfff54cc2b946e3d056795054a35a3a3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.9b85ef7f.tgz","fileCount":9,"unpackedSize":20860,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICpydVq8m2RLOBYOFApNljFjB6+IecJQSofGN7BleK+HAiBS5srGNiQk1BpbjqucqLomFNiUhvOgSZOMepwFiMt06Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.9b85ef7f_1518195832202_0.8117815906915677"},"_hasShrinkwrap":false},"1.1.4":{"name":"@crave/farmblocks-input-text","version":"1.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.0.2","@crave/farmblocks-hoc-input":"^1.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-AUBfp3EvqFRiHSgieqeY8oZfle+LqH4A9Mu8n/9h0jOYBZ5ErZE49dx8MJsBc9HgjZ1U/Lf+mGZAuJ1RGyh/cg==","shasum":"c9ebbd30cdc148a403d45c24d0b5979c06b8606b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.4.tgz","fileCount":9,"unpackedSize":20771,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgxA8IP9jh6SCRjzFN5ucG4SwPsGM2LHD4dSMT1s1ZgQIhAPgmN2SqqIVJZofTAD1ZqSn6GktI3wdrX//+56+C5IXg"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.1.4_1518197419751_0.9782996131086865"},"_hasShrinkwrap":false},"1.2.0-alpha.65925022":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.65925022","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.65925022","@crave/farmblocks-hoc-input":"^1.3.0-alpha.65925022"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.65925022","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-KH74Xv86wjD89vwBv7thEt/swdWSH8kn6xS1ZcVN6/+AclrvKu1x6bZ6JiooXtJO41EvzxrK8ziCEQNL956BBw==","shasum":"ac9e4bd52d91013cb9854d1cf8073d820bf4b86d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.65925022.tgz","fileCount":9,"unpackedSize":20860,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFlcZ1rkfB2U60D7u8m6tzmh5npmV1eD9RGg1wQ0LgDcAiEAogsXqeLB7HRaLchtClOvCHKvRtcBoKn1MylvWcmWV58="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.65925022_1518197430628_0.6032846275037687"},"_hasShrinkwrap":false},"1.2.0-alpha.7c31f816":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.7c31f816","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.7c31f816","@crave/farmblocks-hoc-input":"^1.3.0-alpha.7c31f816"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.7c31f816","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ITT5ByF6i2bq290UNmC/0i3blTdezK4MUgnUWL0a6ML8RWD17QfnduwJ/r6ZehQiMtk1ycu+fxkXpsRkuslfbA==","shasum":"163f61391d468ce788b9f2ccd9a19827ddf13731","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.7c31f816.tgz","fileCount":9,"unpackedSize":21100,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBHtqSj/kvFUgSq10RlenupHX0ze4SWU2XY6h41d5L2vAiBNEILi7t5Ig03Cpx+A2QBanTVZbwj6T0LOj/yrayvwyw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.7c31f816_1518197868828_0.6945257541253926"},"_hasShrinkwrap":false},"1.2.0-alpha.752667fa":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.752667fa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.752667fa","@crave/farmblocks-hoc-input":"^1.3.0-alpha.752667fa"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.752667fa","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-X+/VxTHJ1GQIL7NUdhMIKTKqCdR6wdCK3dTQq+LFw8grcVCLkYA4xSwJZJKAFAIDBxB7/8AS3FEj22fySqpmVQ==","shasum":"73dc37434d1e327d8be9906beabbf5aaf5206c48","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.752667fa.tgz","fileCount":9,"unpackedSize":20860,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEH/AtEOSDXQDh8JB2fUbk2RERlhhGuxZouz9Wpf4NXYAiB8+Wm8YyiFx6TsnfNtotMKNjhtXH83BLTRkaasMNyF9Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.752667fa_1518627876965_0.34340585478911345"},"_hasShrinkwrap":false},"1.2.0-alpha.cd343c62":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.cd343c62","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.cd343c62","@crave/farmblocks-hoc-input":"^1.3.0-alpha.cd343c62"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.cd343c62","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-zrpWbHYeHb1ODxymYVNafUHuQeUWN+3BayJ00HtsDxHzHYPNK7raIg/7hn7exjJVoPA/SQnVtjqCLsJrwlEqFQ==","shasum":"4565d7ead06304e6841eacfdcf424ae2cc37e450","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.cd343c62.tgz","fileCount":9,"unpackedSize":21100,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0wKMY9erFoamLGwzepVo4hpxB5cLTZTvR8lv9UsO8dgIhAMmZRma5/lxMwEXa92rQsdLe+FiSnmK9qABzDVlSs/9W"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.cd343c62_1518628659466_0.14441328489854732"},"_hasShrinkwrap":false},"1.1.5":{"name":"@crave/farmblocks-input-text","version":"1.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.0.3","@crave/farmblocks-hoc-input":"^1.2.3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-tjRDN0ZocLP0IPVTpYlsIYW/ocyWri5bWMDhk4OG0JL37uVE4TT5UglvpspFWvlFSmBCfVS6McKbGBdIrFSoMg==","shasum":"03ec148e586cc439fa621e4536276ea47dcc7f08","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.5.tgz","fileCount":9,"unpackedSize":21011,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYSDbgw+1o1HQ4sVMMbNDHyjn3XKeKD9DodABWyoNrZwIge2zo1RBfqoc/Y9VlS9u4Szy4s1m7ko0Xb4Z39mcD1rE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.1.5_1518633970564_0.6667970601703674"},"_hasShrinkwrap":false},"1.2.0-alpha.691f8308":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.691f8308","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.691f8308","@crave/farmblocks-hoc-input":"^1.3.0-alpha.691f8308"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.691f8308","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-SMvZHYQxUlBc1q3RmLq/5cZ2CboheemCiVCV1fO0meQPOpzLjcMXT/etd1y77JWxZFCgtYTpXrBIjon2uc2zvg==","shasum":"592a408bde012b165b891f0b5657a978ba2d93e9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.691f8308.tgz","fileCount":9,"unpackedSize":21340,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEFNhWVMYITAm3q+CVUm6TVAXdVDZvalI6Ca/QQqQGKKAiA1DqDPNuywT8/bLVuPOCjXIE5uVJWT6Lmh5wmx673SVQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.691f8308_1518642560639_0.5493537044464449"},"_hasShrinkwrap":false},"1.2.0-alpha.ab2883ac":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.ab2883ac","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0-alpha.ab2883ac","@crave/farmblocks-hoc-input":"^1.3.0-alpha.ab2883ac"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.ab2883ac","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-nk9OMfRn+FL18w74CQKE6fub3+ku4A+xbDWnu3NuNPMTvDZKboT3MdRXNwXmnTETuqJSIi70mvBjl87ne3r5LA==","shasum":"b9368bdbaaef381fd06775617098d930bd1e93db","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.ab2883ac.tgz","fileCount":9,"unpackedSize":21340,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGJ0sXpvz8CYCOUYOCLA5VWOoF7gw4MgTNflA5VCcneRAiBnaL3wihYjVonrkmSRO+7nrNSwiluamX4FqZxHpL7Wpg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.ab2883ac_1518699860436_0.7815931461168288"},"_hasShrinkwrap":false},"1.1.6":{"name":"@crave/farmblocks-input-text","version":"1.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0","@crave/farmblocks-hoc-input":"^1.2.4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.6","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Es4ufFRhQyptz76jlhFwmUGMRv7vcHsPNWxusBbSha0rbnzgLIvI0Ud5UYvXeRbcqJOsOCDcNQEhZeJGWpaw1w==","shasum":"f3ffa081dcd9d9b941d501ce12a9e6c689527c9a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.6.tgz","fileCount":9,"unpackedSize":21251,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0f7LWFqwsLfiSgDrhn2Hm6NZWuxuhx6Ocn5ADdKdQ5gIhAOkSS6BN932i10JMie9y5CST7iyG2kU47H+A5forGlcD"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.1.6_1518710940038_0.14994221499248872"},"_hasShrinkwrap":false},"1.2.0-alpha.50b0d2d3":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.50b0d2d3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.50b0d2d3","@crave/farmblocks-hoc-input":"^1.3.0-alpha.50b0d2d3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.50b0d2d3","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-iKjtEPZoVOOYOGg+/KQ/oEdgPRL0+VNzjaQoP1Y8Rr3BczBGNstw61B9HiVU7igaejW2FIJqVkf7zisKDpnIPA==","shasum":"fdf98d17c4c1eda7af7eda5782a168704e0abc01","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.50b0d2d3.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG6NJQ07IiURefqeMhZi1qaCDpu6cJHXt4sUluommmY4AiEA7tK7R4dfRxajt/O1sq2mojLgxvPUkxn5oCmYNFxgAig="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.50b0d2d3_1518727369743_0.9342660335179276"},"_hasShrinkwrap":false},"1.2.0-alpha.168f0cb9":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.168f0cb9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.168f0cb9","@crave/farmblocks-hoc-input":"^1.3.0-alpha.168f0cb9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.168f0cb9","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-UJYkXTNJ/jFM+F4M8Lwh+TzVTqYLxA0+3oQyUz5x3RRjL3rXlz+OCcu/breZbH62tpJj7qUAYiR8LxREmA1DSw==","shasum":"247992ab1ee00e07c8c5260b626ea40979f0258c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.168f0cb9.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9Icm9aKgh1GRHOI7ANs0b+6WQLISGM1fP5rph/pK5ggIgNxfAx3FpqZaKuOeJoddaq65gklIxhXKWyEr+kepnMm0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.168f0cb9_1518727628996_0.1240068621533621"},"_hasShrinkwrap":false},"1.2.0-alpha.cfa0eb52":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.cfa0eb52","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cfa0eb52","@crave/farmblocks-hoc-input":"^1.3.0-alpha.cfa0eb52"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.cfa0eb52","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-hxCOImUvs7ZXO5T1eXKm99YqAppyoxSqWEUXD6yc08uk+Xk4QmgCbvnH/Xqbo5TrnoxhPmBUZwi5pL/6KY9Zkw==","shasum":"118f91128cfaa890d47616a2276838a2c1e7147b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.cfa0eb52.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpYQ16GD3O39KqDj06G5kQ6bsxuliAjzxrG3bUKKJXHAIhAIbvXC3zp0rKgGtl3sTMLxtHCGlVqV0m3CPU4cpyBGHt"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.cfa0eb52_1519042295565_0.5661359544202931"},"_hasShrinkwrap":false},"1.2.0-alpha.ed4f9e62":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.ed4f9e62","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ed4f9e62","@crave/farmblocks-hoc-input":"^1.3.0-alpha.ed4f9e62"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.ed4f9e62","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-StJSD3St93hSNZL3nMTyTxtlpO1Jr3g56yH0vg8+ukJd/Ps5yE3fcvt2kN0mYUr+iaveX/31hSmPMhYUb1Nssw==","shasum":"32513daea706314026da9e6c3961006650c5f5e6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.ed4f9e62.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2A5Pp3JS0zFMJ6DWdAlY4yRZ7b7E3STLfd6qTBmAQNwIgGh4ufJ9flCPDjUukSYLPSft3IDyYYe0bZ/BuQMfXREU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.ed4f9e62_1519051290133_0.34803169253466093"},"_hasShrinkwrap":false},"1.2.0-alpha.ac715917":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.ac715917","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ac715917","@crave/farmblocks-hoc-input":"^1.3.0-alpha.ac715917"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.ac715917","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-zRDjV2JXAyIm4OVekWxb5+feegvQP2gLUHHITgU7rpeZvLLIukOYvr+lbq2Es9ocgkBsWF6O2vEiHdhkEW3EIQ==","shasum":"02150afd2405957fca184f2505698a4460f2a58c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.ac715917.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCVrE36HRStpycsQgYgJH3Mcl12OW9bzC3nvJJ73fYLTwIgdIQLNbCk4hVs3BaLrEqjxUrompVmSOz3O/WkT0cnU4k="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.ac715917_1519051634098_0.7861625091381137"},"_hasShrinkwrap":false},"1.2.0-alpha.5c7d34e9":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.5c7d34e9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5c7d34e9","@crave/farmblocks-hoc-input":"^1.3.0-alpha.5c7d34e9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.5c7d34e9","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-RUuXEMwPG/c7qhMV4abqdNQ1wfaLrJBL7YyIHfyICG0t6onLLI1+0TOYBANR9j9Fs4ij8kHslSsUt4GYirUPqw==","shasum":"6bbcb35f7fe77ee45adcf2336a916af318c8e2a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.5c7d34e9.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfhA8S2wCNyJoX3eUXbKg+EBQm0fquTeY3ttjxVMCwfwIhAPHw28HR5YS9KV7V0g0sR7fcsiAqQnObgmHC6hJahnmV"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.5c7d34e9_1519156133193_0.264736789785434"},"_hasShrinkwrap":false},"1.2.0-alpha.92969b58":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.92969b58","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.92969b58","@crave/farmblocks-hoc-input":"^1.3.0-alpha.92969b58"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.92969b58","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-pwbMKQOS+SoLynmiMcP9vZUahxdD56R/RLdhceUgbh4W2emkI9gzcMu1HmLEzNJvc6kU2fJpSG59uimtgM1loQ==","shasum":"c2aa64d1a16c34faf75f7487cbcdee91882b269a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.92969b58.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF5/SQNwiJ3WEuV5yB8YqA991xkAvQMju/YN6VQi7MgvAiAJCd615JrovQZTREBf6oI+bssiyor1CApKAijsQtxb5w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.92969b58_1519241796600_0.22694883334725757"},"_hasShrinkwrap":false},"1.2.0-alpha.902a38de":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.902a38de","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.902a38de","@crave/farmblocks-hoc-input":"^1.3.0-alpha.902a38de"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.902a38de","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-DU1JMw0koiAHpTJRE3OEAnQcFQj1/XAW0d2vWSixVPWQeOlRJw+sISgR6u7j+Z2SP/NggN7xCsDgwCPprnWXJw==","shasum":"523da53b9f59b36767acec66a44bf93f847c043f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.902a38de.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdDE6qGgxGsy6iMtH2pv0c5om7gd8zyEyJcmgN7fWSAgIhAK/s+2vY7fO3OVC6lEcnycfEkfmbJJsLN1S0/bLQPjS7"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.902a38de_1519242653198_0.4083386158074902"},"_hasShrinkwrap":false},"1.2.0-alpha.ca52a343":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.ca52a343","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ca52a343","@crave/farmblocks-hoc-input":"^1.3.0-alpha.ca52a343"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.ca52a343","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-1MmMzsm6qrfpFKstpt3AJy5oXht5m0YhjXiFYG4agHGXgmJwkzk1Z+Jqk3f39WRxj7ZhMAlOJk4yrdWGSpP49A==","shasum":"90895f08011bfea7243f0adf9ca83f2d6cbf5598","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.ca52a343.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICjr0hISfCiL1CRTF4E4H0hHhO+wSelDd+zlr0ZR50QUAiEA3E6JKbMcmpzLUO01b35kcVp60TlDFGOOhvnLMq/kHNc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.ca52a343_1519305587930_0.4215046309195012"},"_hasShrinkwrap":false},"1.2.0-alpha.3c54c768":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.3c54c768","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3c54c768","@crave/farmblocks-hoc-input":"^1.3.0-alpha.3c54c768"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.3c54c768","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-FdAtseI7hgg0bNG6i52Jkhk6zzaNzb2LBt1hjJFurDct4Zf/flflV62QLoDHVJ2C692EVau+/snh88+/FlkIHw==","shasum":"c375e6274b03c5210596d02ac363648f27d17cf7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.3c54c768.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF85M3Lhugt4nZ9IXPrMIJVR90aeITB6jms21/GNjPGUAiEAv/Dzbfnuq16tC5o6gbPM2HESj1l6BTFrY1X6Z2HgsB0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.3c54c768_1519321697074_0.9866794663125367"},"_hasShrinkwrap":false},"1.2.0-alpha.a3a35fea":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.a3a35fea","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a3a35fea","@crave/farmblocks-hoc-input":"^1.3.0-alpha.a3a35fea"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.a3a35fea","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-7tn0F0+ILFU3HZg8K1TC6jaS/CKZlVdwNxHq1x1oWknGM20ogFGRLwulANMrbM+qBLF3scTnB844xXy8VCtHlg==","shasum":"23db2319b3c260362e54734efb2c2786bd5c8006","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.a3a35fea.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDyGwWAQ5hnG0GeYoK6Y26EyE42YWj6eZ9pXbIAfEBkwIgDmoc+KEzh1nwFF1OJEXMCaC7NvOuwXZcuP7oHu1BGTM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.a3a35fea_1519321840909_0.4165736131462412"},"_hasShrinkwrap":false},"1.2.0-alpha.2bb04706":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.2bb04706","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2bb04706","@crave/farmblocks-hoc-input":"^1.3.0-alpha.2bb04706","@crave/farmblocks-hoc-validation-messages":"^0.2.0-alpha.a3a35fea"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.2bb04706","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-/ZJmnNTFjdNWAO/asQZ5jBa0SKdbku0YbNRxigyMp/1TpUOR7slsvz5g2aSyKbBjOt3wfshd5C38YJo32RRTeg==","shasum":"987a1334c1036be811fa00a3d890a122a8aec8d1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.2bb04706.tgz","fileCount":9,"unpackedSize":21993,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0KIjV88zViHYUcDflkZ9FNQPt3Dy+wm/HhY2gzLUXfgIgIpRcN//pttSCdDTUhgyvsd4Wzr0zMgjJCJhQYA89lXU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.2bb04706_1519330460716_0.8500689226891391"},"_hasShrinkwrap":false},"1.2.0-alpha.358a62d1":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.358a62d1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.358a62d1","@crave/farmblocks-hoc-input":"^1.3.0-alpha.358a62d1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.358a62d1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-qPzNP3CA0hQSi4m4aeduHYRDYX6sFT77yb/CGcx9jWFEYZefkc9IPUJpx2Qa1zROgThuvPOG+0iVeyDSUGcmGw==","shasum":"bee9ec1cbeb3520673104b0ab88b39da6900ff60","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.358a62d1.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA3E53M+b9lfKXDhk++n6+fesEWqxes5plyfXLVIwvnWAiBBuojiKconDpW9eiZLpEhUmm/ZVbtCfgg135/c5XCTxQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.358a62d1_1519474617344_0.7225331176121794"},"_hasShrinkwrap":false},"1.2.0-alpha.c751892e":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.c751892e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c751892e","@crave/farmblocks-hoc-input":"^1.3.0-alpha.c751892e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.c751892e","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Q3DvX8G30FeJsmADk3gqTPNfrbh3v1boIK1wDd4wJ43Weep/2HuaP45xqJa6RcxAmhHlBIxiXacNtq25DEcHVw==","shasum":"5bc718841155a273cd272bfe09911febc45b719a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.c751892e.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5OwrhElBUkbvQTQhzlGAAA9Tlq3Jkub0MHX6zN4US1AIhAIRyP1KfELzJNNpZ4BL8sEHpVqGndxI29VSB9CYSX+9t"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.c751892e_1519474660666_0.5661521992734269"},"_hasShrinkwrap":false},"1.2.0-alpha.dfa3e112":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.dfa3e112","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dfa3e112","@crave/farmblocks-hoc-input":"^1.3.0-alpha.dfa3e112"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.dfa3e112","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-RKbXug3Qv+vf5hjbiZvdiqPIJZ49TyKqEAi/F+Kvta15bu7d4ETgLlAIdHT+1uLbiWdChCgRf/GkdNale+Jxwg==","shasum":"4b1bef5f878f73f47129fd3c892b4f8a895ca15e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.dfa3e112.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwKmiBf9OzPCLffGvEuYoPBvEYAatQfGD2FA/zK++kkwIhAIkwEcGLTNlK8ZTN7elGyTQItKHornJlHtr+6CZvfSGf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.dfa3e112_1519754599245_0.2408828943564112"},"_hasShrinkwrap":false},"1.2.0-alpha.2cae8f1a":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.2cae8f1a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2cae8f1a","@crave/farmblocks-hoc-input":"^1.3.0-alpha.2cae8f1a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.2cae8f1a","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-LSIQJ3oWevg4l0XoGbY157o9nfpneH/9AHd8YW8/h35C5/N2FSrQKpVIONPDBSADgv5tsnyUDWgQTpbN0jAfYA==","shasum":"3d8a5a662bec38f052a114d767f39d4fd32b98c6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.2cae8f1a.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGYenaCOwymeAz/5U7SDyqJokJGuBl+BDtWNmhMioDdvAiEAv+l6uLJpIsNQQc3d3GwpO9b9GuJZ9TH4fX9G+NP/Xvg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.2cae8f1a_1519914583883_0.16929565147295467"},"_hasShrinkwrap":false},"1.2.0-alpha.6c857b04":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.6c857b04","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6c857b04","@crave/farmblocks-hoc-input":"^1.3.0-alpha.6c857b04"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.6c857b04","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-0TMHsq54bj2IjszhRKhv18cJq7AhKHjYWiCL1jY/z/gjzqU7mDWQN4bw/j3vZaXGxuwEDihOoQdyKy3+IEe6mQ==","shasum":"b7f2389d6b7b3b64bcbc6cb0a5fad268a64f1330","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.6c857b04.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBVGhDmmmqUv7Ucx/hJMmFmssrEEVXqvDce4NGQO88XwIgXWYE/bhpGnV80La0jjpfzWYjNHzVsOYmYimp+z91/V0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.6c857b04_1519914795839_0.13406791374605675"},"_hasShrinkwrap":false},"1.2.0-alpha.e43ee4dc":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.e43ee4dc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e43ee4dc","@crave/farmblocks-hoc-input":"^1.3.0-alpha.e43ee4dc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.e43ee4dc","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-oGmP15XMFxJhYUMqLYkqMlyPoVrO2BuhQ+OkWBOj5KrcX2ihbKqSdU/t0jPDydDDMnXZOsIv61RYyhY0KKnjJg==","shasum":"a6176d50d0caeb426edbfb85753ff71de9ad456b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.e43ee4dc.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFelUeNBvM2VJ3Roz843SoKFvg3XmxLe5Q6lBHg0V6osAiADxX17qTteS+w9GN+SjHAkpx9UeEWTorsU59tZJkzExw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.e43ee4dc_1519914963717_0.45669896713094915"},"_hasShrinkwrap":false},"1.2.0-alpha.9948bb04":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.9948bb04","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9948bb04","@crave/farmblocks-hoc-input":"^1.3.0-alpha.9948bb04"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.9948bb04","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-bPPgcMDfiZQRL9m5SBqBE5jg3pYLZeyrBH88Icpg7ZT/Q0cqeQ7MstF20jCl68FeHzQHsSzN2hu3cfoUdPH2qQ==","shasum":"c72a9fd6e5d53cb715b42a6159d869f1f1ac2777","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.9948bb04.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBR8RnGed9BgmEF183otHn9NUZR3r+CW10ISNNCSMzV0AiEAyP1s+djpSyA0fQtjg8lFrTZNFGvAycNmlm5/NmE0QRA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.9948bb04_1519916116908_0.9589441035648163"},"_hasShrinkwrap":false},"1.2.0-alpha.47bbc810":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.47bbc810","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.47bbc810","@crave/farmblocks-hoc-input":"^1.3.0-alpha.47bbc810"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.47bbc810","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Eu5RH4VXaj4JOimaDNCChNSHcL6qUzUFvW5L5rglOhHE6/BFAZn8Joaz7kBvgPsVp3DPi/z3wEmxJtUH/vsyRQ==","shasum":"8c501bfe3e4ef4c1b698efb3977ddb02cbf3f7e6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.47bbc810.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCF2URjxqkrp7kOdfRLxhSIuqP7xRbkNAUQC66pAxlNLAIgAJWKMFBcoHA4oRLCnuRA1qKZubpoty9XNkdkgwGQC5w="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.47bbc810_1519916665376_0.14304369398145744"},"_hasShrinkwrap":false},"1.2.0-alpha.7d883b2b":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.7d883b2b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7d883b2b","@crave/farmblocks-hoc-input":"^1.3.0-alpha.7d883b2b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.7d883b2b","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-plhY4VgqaTiMduoRY1HFux49D05FKVk7tHyIU4ucXWginwIPQ1wF7ugPlFSpffN14IoCxpDPmlmz5qAO83gT1w==","shasum":"85b72381fc0ebba5dfd428972c629f2146d922bf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.7d883b2b.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFEOf6TPdLGNEJp+3tAW/9V8wmmRMEHJ27eR/RjTYx7oAiAbnnQ8O02Q7fQWIa+b4c5YfeARBxb/2DR50iOAPYWH3g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.7d883b2b_1519916870563_0.31631744323844346"},"_hasShrinkwrap":false},"1.2.0-alpha.4fe9b155":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.4fe9b155","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4fe9b155","@crave/farmblocks-hoc-input":"^1.3.0-alpha.4fe9b155"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.4fe9b155","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-SxUUY3cUUGl2moiITFRmfx9eUDzDXQYlkZku7SOAK+9l9VSUpX94+p3YNw7PRH1+CTwRiWiVkHvljsee+eE1Lg==","shasum":"0c6fa0b462fa2125bf83348304fe17d3f6be2ed5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.4fe9b155.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLGkQvMOL31SsNbacRijU++MNPxKGJxeBteJYNFIFK0AIhAIPGMUrlHZYrVwm709wPZAs9kvLwm/CaoPuuVPvtYcq1"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.4fe9b155_1519917657566_0.3732643374921203"},"_hasShrinkwrap":false},"1.2.0-alpha.5e2394d5":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.5e2394d5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5e2394d5","@crave/farmblocks-hoc-input":"^1.3.0-alpha.5e2394d5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.5e2394d5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-FTiqRSne1ngr747ws9JYhgb96BWi/XNxOu1LAxH9ogD9ST/aCiAdPPagS+t9E9NH/1R8+QniDA7PudcXIje9lg==","shasum":"45a4748cea686288bc30e19964185d2b144faa49","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.5e2394d5.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2CSOGyDvdV6vvz5tObpl5ZNfZ/elQghFwdh4BN2WDnwIhAKDIEmsi0HF6COsbD3Z3N8CVJFxtVKpVcQV3u1NUucUu"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.5e2394d5_1519923645149_0.5321620816444688"},"_hasShrinkwrap":false},"1.2.0-alpha.3339366d":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.3339366d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3339366d","@crave/farmblocks-hoc-input":"^1.3.0-alpha.3339366d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.3339366d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-+ibrKKII8PqmCDLjgkmTTXRV9WdWA7y3qtJX+GIe9Fhkup3+HN5sjfofZ2k/z6fSfUDPQxCqmLb77sCRDbNFCA==","shasum":"76c0ac3c411080225223135bced8d530c957d1fc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.3339366d.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWUi4iUe5nx9qmeKyCHH0WicQDLnSxqMJsiUh9VBbs7gIhAMj5G/gCMCtWyK0ZUv9CC+m0ynKURQfqkx/X+6rWAv/K"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.3339366d_1520011807674_0.06282336889084572"},"_hasShrinkwrap":false},"1.2.0-alpha.15d60a1d":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.15d60a1d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.15d60a1d","@crave/farmblocks-hoc-input":"^1.3.0-alpha.15d60a1d","@crave/farmblocks-hoc-validation-messages":"^0.2.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.15d60a1d","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-O5T5hcgF0nf90ANgq8EYQ9S/05NHykMCrOHS7m7WXWZZ2eqpQudMJOJWGmSFAETvFfrGf6x6lZWTirwdoEhQ9g==","shasum":"f3be9dff076941258df633f7580e2458ac01f717","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.15d60a1d.tgz","fileCount":9,"unpackedSize":21978,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFO++Qu31HsmH6amfg9inRXi1g8ZYZ9KZ/HlUqoOXZsgIhAM17Aq53J6iMYTk01a69qbLjug/Do0GAZvAYf1mPXHtB"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.15d60a1d_1520013775274_0.841705559290377"},"_hasShrinkwrap":false},"1.2.0-alpha.4689ce1b":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.4689ce1b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4689ce1b","@crave/farmblocks-hoc-input":"^1.3.0-alpha.4689ce1b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4689ce1b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.4689ce1b","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-s1i8K4pJfOgC3DyrLSBxQinpDNTR9cB2JrHCiXkeJwkTOVHZQFWtJCiLr0XM8haYbRo8q1Sxq7M/f6B6lgsONQ==","shasum":"3670f31bc6b8ca7e80665358b5451978aac43896","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.4689ce1b.tgz","fileCount":9,"unpackedSize":21993,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFs4ZiPPLawS+D9+Pswu2WbabsgDf4qw714QP9x+g1ZaAiBruN9jugKvenwp1BhKC3unfmvOlEvUiM66q+Tk4lUllQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.4689ce1b_1520014358770_0.9886347058695892"},"_hasShrinkwrap":false},"1.2.0-alpha.55b75a04":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.55b75a04","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.55b75a04","@crave/farmblocks-hoc-input":"^1.3.0-alpha.55b75a04"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.55b75a04","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-wJBZlClFc6RZjtWLnJkVhyZC5KQUFL+0t4EUrtNspsmOcMh2CJoe7Y2rVx39sMJQrIN9EkMkLlbDsJKDPMJuVA==","shasum":"aba3f74a68520645423564c20e93e0b5c49f52d9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.55b75a04.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFCSxXO6u72cTg1M88tNZb4O2lmAgtRMnO1S9EoM0DY4AiEAuqWKghFdNqDyvbDF+1KDvHwtodluqf2musEcc4L1mOw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.55b75a04_1520360831117_0.18685969398503532"},"_hasShrinkwrap":false},"1.2.0-alpha.bc9dca28":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.bc9dca28","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bc9dca28","@crave/farmblocks-hoc-input":"^1.3.0-alpha.bc9dca28"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.bc9dca28","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-5ZKlcRRlFjpIELLsUxs9A4dLGQhnt5fpfseOc4Z4yLq39DdsJ9S2abTWMQyWrq02laCa9sH58PjfO5wCrJc3WQ==","shasum":"502197aa1a29f04710950b9498b23c0a4472c2f1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.bc9dca28.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrwffpd84/dCwQaLbZRU30IRdM6D+emMgWkbTBnlXLHQIhALtMQ/RitTcdnxw05jsowLICpBDtsKF1wWouFIOKDzAy"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.bc9dca28_1520371979429_0.8465566853954498"},"_hasShrinkwrap":false},"1.2.0-alpha.81b4b44c":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.81b4b44c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.81b4b44c","@crave/farmblocks-hoc-input":"^1.3.0-alpha.81b4b44c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.81b4b44c","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-y+LKoO41OWUg0+hM+wT0fOl6zqd212aGd2X8p+Hwh+yoraoXNhFOq8Y6udHPtD2omTnc/qoXEZSrKxDC522KEA==","shasum":"b607ce4891aa5ebc0c88636d4a75c7439fcb9f95","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.81b4b44c.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHptKsKbYB1zNMDpZ8dUkLrW2xTzYEVTC1xPukslx65yAiAonbyAFkh3EN3akFW0ehPqXkvmt2p90fdRlxthV/AILw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.81b4b44c_1520431540086_0.6618038554140842"},"_hasShrinkwrap":false},"1.2.0-alpha.53e87982":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.53e87982","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.53e87982","@crave/farmblocks-hoc-input":"^1.3.0-alpha.53e87982"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.53e87982","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-um6mX+9H8RtD4i081p/bRNB+tsC3MlFLexR4ZCNSWHVojdHluhqHnZsmxIuGc7nkF/sQJCfGnKXuZ7TqQ69IbQ==","shasum":"3fd9e362d89a8fcc403c016f8561d74dc730c570","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.53e87982.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD4yyTDxBr1xv1KnUKZSyhk1dbox3g5xfHCX+U4kEscfAIgbw2yR+EZ05JmnMsoebXvnh/z0hLK0eZg3Ib/d47V0RE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.53e87982_1520447025142_0.12403968094970752"},"_hasShrinkwrap":false},"1.2.0-alpha.df4193e4":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.df4193e4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.df4193e4","@crave/farmblocks-hoc-input":"^1.3.0-alpha.df4193e4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.df4193e4","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-lm20IU/r4hxYLSP26d9v18xJSs0nKWWX/JFZk+HPTSIvzk8eOKoHU77WEojwMIWXANhCf3p6wowL7KoIjOYnyw==","shasum":"ce1eeedcb2f690941429949451ee68be47a4a9a4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.df4193e4.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMRMPumLJhXFSLsSFYbK39z/duNvBv7PpxCIjLiImOzQIgUURBX57Hgz6GLmkRxXCHNdJSeZVhH0aQcsjcBFqPnwY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.df4193e4_1520448552930_0.4215204121468952"},"_hasShrinkwrap":false},"1.2.0-alpha.c5e3d9b3":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.c5e3d9b3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c5e3d9b3","@crave/farmblocks-hoc-input":"^1.3.0-alpha.c5e3d9b3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.c5e3d9b3","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-zDFKKwmYzqAHxs33jAPM6sbwXgBgFee+H7atJhHd3cjpjPycEqfhsIss9ZA1SfHIejo7h1NSGI8c+1SLgQdrSw==","shasum":"c1f235c9cbc4cd5d7dcb001c237bc6fb86823fc9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.c5e3d9b3.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG9y+BzEvPk/jvYDiUsmRbVOFOQTssnUV0KlLEECNmoqAiAxejSoBtl0F4bN6/WgOhewYwWobPCyH3CS0WZ+TW7nmg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.c5e3d9b3_1520467259993_0.30421796591522776"},"_hasShrinkwrap":false},"1.2.0-alpha.9fb9a7b9":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.9fb9a7b9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9fb9a7b9","@crave/farmblocks-hoc-input":"^1.3.0-alpha.9fb9a7b9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.9fb9a7b9","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ThF/D9mcotoBOggVwVPD6ZmTsQYUZdjnaVWRHsPHiTKx4XdPSFbsukqSiUkVwLOTU4mvIUvaHHwZPQrQQSQoBA==","shasum":"8bcbe76aeb45760532cdfa83dabb4ac83a2a4f04","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.9fb9a7b9.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVe8uY04hNSuqMhEDsRN9kx9Jo7UcMaIPtPaH2Zq4UYwIhAJT+wDAviaU8UGsTAjCy3nfhc6IbFHD6I8GasocNeG7t"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.9fb9a7b9_1520468495361_0.6409988010024086"},"_hasShrinkwrap":false},"1.2.0-alpha.12deed82":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.12deed82","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.12deed82","@crave/farmblocks-hoc-input":"^1.3.0-alpha.12deed82"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.12deed82","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-jxQzGi4YTFayyslzMLtzcLdD82YUV9Tdtsm4HnpqvMErH+/5O23dMb+07HPXWrsAHTAOw8Q6zbgdaFJJnT2iFA==","shasum":"df76a8c9d8cea4d842c0be6aab48bcf5bddfc137","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.12deed82.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG5Cg6qkiIyYxqiukHNYk04zyUHfRXuohi3wJEpr0jbAAiA+kj4CAESIHXMAVpbgCZI3BeCFrnessc/fiZrDN8lcAQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.12deed82_1520518111159_0.45401187704879753"},"_hasShrinkwrap":false},"1.2.0-alpha.86932e17":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.86932e17","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.86932e17","@crave/farmblocks-hoc-input":"^1.3.0-alpha.86932e17"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.86932e17","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-G/9FbpIA0c1vGX/ACJy6QuXVcu1PwYA1xg0hRIk37zsClZfum86PLMXqhIzgGwD4k8U6Dtujw90t0wjbukSUtA==","shasum":"be0ed4466fb31c3f0b006b4dcbc89b916295d560","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.86932e17.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmEv7ETGPYwBb0Ap0Hu1XKjhx9+2gZuzBqFtaWv8TvggIhAMUFXJCpzcF1tncwuQWhxRZBgKd7EIbJPRfx6WCThzPs"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.86932e17_1520522615453_0.37979702739309285"},"_hasShrinkwrap":false},"1.2.0-alpha.8677a9a6":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.8677a9a6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8677a9a6","@crave/farmblocks-hoc-input":"^1.3.0-alpha.8677a9a6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.8677a9a6","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ySUj+OoA5GjDXawEzq9N3SHqs/gXcR/sqZS5DtYNadY1FRl7lR9hL4GF9Qx84SvDT3ecKXgdrnGdWqkBMbyzAQ==","shasum":"5f631f363afe1b1041ebd496caf65fc51b98ac8e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.8677a9a6.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzcFHpM7isdBjSigbtsKmVXY9vctEB5YoE5NwqetiQDgIhAJUodQom5boDfkwFmfnk9/va3IFwXuGDktO8KmSRvluv"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.8677a9a6_1520539176106_0.43537477664143553"},"_hasShrinkwrap":false},"1.2.0-alpha.d7e2e285":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.d7e2e285","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d7e2e285","@crave/farmblocks-hoc-input":"^1.3.0-alpha.d7e2e285"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.d7e2e285","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-/6XXmsOZnvWJspsRPpv3vT0lFfaJDXzH4l+jIGACihJ1InXcodEoURWXc0lSNxhimSUWYY2dtkmo9vp773LiRQ==","shasum":"02f9d1b2e18f37d9ed96e9ba2ed879e8222698dd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.d7e2e285.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA3HFJezTElAYMiYqnD7zSpLnCDQjJKQ3ucoAl/nLOwaAiATNbgNoD9HINYzS5foEJEeL0mkSW5uTtPRjx/rdYGuvw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.d7e2e285_1520616107813_0.9684850264032048"},"_hasShrinkwrap":false},"1.2.0-alpha.36c33f9a":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.36c33f9a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.36c33f9a","@crave/farmblocks-hoc-input":"^1.3.0-alpha.36c33f9a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.36c33f9a","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-O13+7AZ9zVb7fzNl70u8A+FzkkD5WLN+XKGlgHuUFO4nn8moBhlcJ7TKZ3gmWez8Jao5EmmgcvtTPZFsVO0hVQ==","shasum":"622f3390082d2974a7dae2a35e3cb25342852636","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.36c33f9a.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9pyJLqcsELsv68A4URIOIh8BwEGpGsheO7p/P8DUCpAIgcuxKa2DE1u4lCkYXefvRzoHZpvOPkK8N2yt83ZypV24="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.36c33f9a_1520616629037_0.39972776211500194"},"_hasShrinkwrap":false},"1.2.0-alpha.8720692a":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.8720692a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8720692a","@crave/farmblocks-hoc-input":"^1.3.0-alpha.8720692a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.8720692a","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-6HK95Qqkpcpj4h7wqT5OOM3QxOA7MojHNJcMO++dTw+L89t8FrEgK45G+2gak8+GEFQ1DKGwJf0vGee3yZl4Ag==","shasum":"05504edf10b63d024619525398fb2da64f04742b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.8720692a.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHM9Gi1h6B8ixqMUEqrp3xVDZkE3WHqhSUd3ihdjCY7ZAiEA65KozoJKhm4pRUlfiFhuhYe1feuGa12z8t0+aTLbonI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.8720692a_1520857766895_0.7321050722852853"},"_hasShrinkwrap":false},"1.2.0-alpha.6b8590c0":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.6b8590c0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6b8590c0","@crave/farmblocks-hoc-input":"^1.3.0-alpha.6b8590c0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.6b8590c0","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-K0yDT7oCRTsbT8zWSz9b0fgPPwXIcNv6uU0QERa3GIHIoz6q3kP393rqVgOsN57HSP6XGHrguieCzv+/si83dw==","shasum":"9a10630413ae8a08942239090a6e6d9815ff93ac","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.6b8590c0.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBP4yK6+quX/Xto5nMrjnqu6q+eD2p2Tn6z8GQNCCdI/AiA95zoMq4qnDu10dafwoYUWpKEdPoNld5/wSVrRfvjFcg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.6b8590c0_1520867594675_0.7012460799855558"},"_hasShrinkwrap":false},"1.2.0-alpha.388979f8":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.388979f8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.388979f8","@crave/farmblocks-hoc-input":"^1.3.0-alpha.388979f8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.388979f8","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-6ZY4WdA0cDhUuQYqOXvRYNR68AcBF7MPz9VZ2uQCxWF1rVUrPNYyA+yI84IOFv+A8nP4vSyZ8xZdvo1bGRKigQ==","shasum":"59913595c3c116fa1a252552e5eab69eb43a831e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.388979f8.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH6ci6ozLCMnBVZ0PL659POmC4FOM1tjuSWhCJNP8St6AiEAvFuSJb930BP29Wu0HD3VemtmAadvTIIZHd9Zn2ccwKU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.388979f8_1520867847741_0.5983596943262197"},"_hasShrinkwrap":false},"1.2.0-alpha.e1b4e0bf":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.e1b4e0bf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e1b4e0bf","@crave/farmblocks-hoc-input":"^1.3.0-alpha.e1b4e0bf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.e1b4e0bf","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-VsGRvD0cOE0lbHOSqFl1vp80XCtZk+ozv7lRfdKJA9haZLNGiTvjewJrzrihHN6mm2kdAOJ/I3NVRuuEiAEolA==","shasum":"11b42d2fad56ac81e1851f262f959230281c97a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.e1b4e0bf.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDyQjESNCoPcPbItcGupUkZMpRodXknkXvhdGR/kgE2ngIhALnMt7fJR/+7mBsIptrPjRSiDFBlvhuImz/lwL9679kS"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.e1b4e0bf_1520876402075_0.4352537399278822"},"_hasShrinkwrap":false},"1.2.0-alpha.c9c9432d":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.c9c9432d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c9c9432d","@crave/farmblocks-hoc-input":"^1.3.0-alpha.c9c9432d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.c9c9432d","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-aZb+NAMMhj7E9voJglT2gQWqeYcdSQtYrVkPvVSb0lSjRSW09jO5m0toj1mf3R3WkSJl3UxkG2qF2IrsKGAYFQ==","shasum":"03f1c35913af4fddfb2e5300a430b89038270021","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.c9c9432d.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkL2xGITOIXYMyRhB83UOZ7gERohciGSZsdeCcHQZOcQIhAMGNWyD8U43UqRkHCws4PWckEm17qPwZ1eRKgzL6JK8y"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.c9c9432d_1520877510903_0.17038051889118777"},"_hasShrinkwrap":false},"1.2.0-alpha.3978e1ba":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.3978e1ba","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3978e1ba","@crave/farmblocks-hoc-input":"^1.3.0-alpha.3978e1ba"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.3978e1ba","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-J+Qpj/YgNwXhM2liv6pzsEFM2tYgFSxyh2N6erru/UHQ0N7kEIIKcLZb6vDDaUpYuELnoZbJQPHFrrV+fPhogA==","shasum":"493269f57648698a23dbd96df3951472f3b33fc1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.3978e1ba.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBAoUkq0DjakkESpzmibCcvUdF/vB1oxhrVoBu0k2POiAiEA9E/C25zyNodPabgqxOR6cX1LWCvrDOt0JZPfc78FOiY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.3978e1ba_1520947229573_0.8923304793908904"},"_hasShrinkwrap":false},"1.2.0-alpha.8f4b3437":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.8f4b3437","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8f4b3437","@crave/farmblocks-hoc-input":"^1.3.0-alpha.8f4b3437"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.8f4b3437","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-oEUJg6BA+obEotCU0nlzX275UjeRuEgD6xq5W+fzwvws+rhsAz2O/b+wGfmYtg8gYLzWT4avC8Cp6OkwQ6ftYw==","shasum":"83d748315bbcc55909ac72763f744a5a1b631eec","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.8f4b3437.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcuI5H18YM+pIxUZ25iCEu9o6lYMYfct1cLs2mvmD40wIgO2uEZZLgbgvnGX1MbWdoRuP++zDDwCr5DGd30M524FM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.8f4b3437_1520947314585_0.7489176572410612"},"_hasShrinkwrap":false},"1.2.0-alpha.543b1306":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.543b1306","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.543b1306","@crave/farmblocks-hoc-input":"^1.3.0-alpha.543b1306"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.543b1306","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-rbDWXHzh30PE2oBMR5gIIhZ7h9HbGi6DHJ2GsCwnhpT4k4Ow9gGOgEX/yp+PhSjp2ITO4cMxX9+R8APXttUOiA==","shasum":"ea662a735736d3ee7174d01dea31653534bd302a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.543b1306.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGQ1yvmZ8Sr6G/AetMK3f6QOM4d8y48sABIOWxbDXJbEAiEA7SZlFacXL/jeItjSpZapuZZg5l+6jIWX/IebM89y7DA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.543b1306_1520951652532_0.15894087916766408"},"_hasShrinkwrap":false},"1.2.0-alpha.ef9f2f12":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.ef9f2f12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ef9f2f12","@crave/farmblocks-hoc-input":"^1.3.0-alpha.ef9f2f12"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.ef9f2f12","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-o/Gt50yq/HNIuA6LYX8/GWZ1kP3yptKb7k8hAcLQa3qFjewRW4Ghq70mHTtDZMYht0uHeIS35Rkc2pCjs41fUg==","shasum":"1d6bc64df6eb25676b28981099683ddce1b7e4d2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.ef9f2f12.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDx9nG1Hi3/HvDQNb4GxwaNw8kr12lP8x5RCdYpaWSx1AIgJYUKCUFpal3i1hH+cO+4lGpyhhP28TFI1mPmNS5BhYU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.ef9f2f12_1520952545597_0.35710116128295133"},"_hasShrinkwrap":false},"1.2.0-alpha.499c92eb":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.499c92eb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.499c92eb","@crave/farmblocks-hoc-input":"^1.3.0-alpha.499c92eb"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.499c92eb","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-8SqZoPHUHTWdP8ykiHO2yCr22EjAttn5Rxl+CA9xbYorDpg87UWLZHRpoiQTmidCMiK0CODug0fD2Ebn/06Jbw==","shasum":"761d19545748a46155b8e0b3f589c7a5ab3303ce","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.499c92eb.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEb9UutAAfs215MFlXZ5pfmKOgpiDDp010bAczWarV/vAiEAi5dM2Y8H71eH7JKF+sHyzDfPg6h30jIN8ketkLYhi10="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.499c92eb_1520958150318_0.23344904332018745"},"_hasShrinkwrap":false},"1.2.0-alpha.2683dfca":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.2683dfca","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2683dfca","@crave/farmblocks-hoc-input":"^1.3.0-alpha.2683dfca"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.2683dfca","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-49M8iuNH/j5Zsu2pN5aFPAgyywReSNwDfyokdWvQKp0jj4szlbWF49UChOpC8v2k/vdP9YRx0d60i0PAtsrpYg==","shasum":"3d8539de478fd7c6607bbbe9444af70049f21d58","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.2683dfca.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAEhf/aGS+DT/lKP63LVwiJP0uLlLGjgO2DRAXVDqDFiAiBiKE25kPcR3Oc3mcKslK1BX6T8WqeEzuCuieUakDbn0Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.2683dfca_1520961754415_0.5531747580296389"},"_hasShrinkwrap":false},"1.2.0-alpha.9c34a990":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.9c34a990","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9c34a990","@crave/farmblocks-hoc-input":"^1.3.0-alpha.9c34a990"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.9c34a990","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-wW0M5Z7kNQ+5Pzd/AzjCgnc9AWCwdxd9D/pwNruygvr1wpKc396BfMvl3Vkoi27B164XnMne+dxVfNlQS60Q5Q==","shasum":"adb2a1f266758688e138e44a86aa4c2a5150dd64","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.9c34a990.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOpodW175W3mXqfYI9FxJzV4S60b1NSxUVRgvlk9/90AIhANiLmTz12jMIV1cSd51uKtPGN7YCeo7SjbbLLdyW02Q0"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.9c34a990_1520962222027_0.6543225452408152"},"_hasShrinkwrap":false},"1.2.0-alpha.88a4310b":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.88a4310b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.88a4310b","@crave/farmblocks-hoc-input":"^1.3.0-alpha.88a4310b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.88a4310b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.88a4310b","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-/d5V9o/VXZGpTdGkQNRl3KFfWaPwfL0F8nS4LPCZlb96qwit+ejj/eq/MI+t5hxWBu4tbjXFDUJ8H8VLTRuW2A==","shasum":"0116d6bee534dd5efb877a9ff3edd8b9124b469c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.88a4310b.tgz","fileCount":9,"unpackedSize":21993,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9QFI3DWrmmwyDyEGoMJz6XOHBa7dVDsUqKFZY80seFAIgRBa4CUFakD/afFYO8F2IgxoTp0EpwQq9wqu3QmMPVXI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.88a4310b_1520963693873_0.9872127757530862"},"_hasShrinkwrap":false},"1.1.7":{"name":"@crave/farmblocks-input-text","version":"1.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0","@crave/farmblocks-hoc-input":"^1.2.5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.7","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-gqeO7QKxLITWWbx402quCkq9Y1BgDjoAOSjfIL0h8WB0Ycd1deV9udc3+jeEY5G66QA6Me1f0Uh8A9HluZWEcg==","shasum":"98234f45a197f075de48bd1dc3291384a7d6998e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.7.tgz","fileCount":9,"unpackedSize":21491,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQJgRZpR7XXf4xPQTWHwIRVrbiGo0mDluVg9Aakm3DywIgMX657UcFfv23y9tOBvH7yaFARl70Z0xshv87mpzhxCI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.1.7_1520966630276_0.5521587647813901"},"_hasShrinkwrap":false},"1.2.0-alpha.d6fe25e3":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.d6fe25e3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d6fe25e3","@crave/farmblocks-hoc-input":"^1.3.0-alpha.d6fe25e3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.d6fe25e3","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-zTj6C6iZVP30EpUTSuFS3uERlZyUphGIrQ1hmGGZ1bfh6uYIuKtf9pKCXYI8/qvFpHunMF7GLqpUg+SXrf7ikw==","shasum":"df3026e1b06f30a228d1d492924d8386a28f7f0f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.d6fe25e3.tgz","fileCount":9,"unpackedSize":21820,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB+DdvkzMER3NAuQBAZsIfYffRC3ymQqTkxfss8BktYIAiEAsEK/4xKIBPqmyrffLivqSld7E4roVtPExiaIpu/F4Fc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.d6fe25e3_1520971718248_0.18253097326030643"},"_hasShrinkwrap":false},"1.2.0-alpha.760c5088":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.760c5088","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.760c5088","@crave/farmblocks-hoc-input":"^1.3.0-alpha.760c5088"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.760c5088","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-xEBVSBUiRf0CHWtoFyglex/U4pLx2wT1iic3DDcEAYHZDj+MNil0C15OpKusGnv/hbB3QAyHmxBKf8a6+FazZg==","shasum":"d706bed9bffb2e1a855b7f0d0d49054b593148c4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.760c5088.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCIShDvI+fbDdwOW3WbWxrz4R2rWIwNOU2griNTNNUThAIgDQ9BcM7tpeV3xSj4qx4OdCTHesgtZkCl6r2ETzODkck="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.760c5088_1521031721604_0.6123723667964327"},"_hasShrinkwrap":false},"1.2.0-alpha.66679c4f":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.66679c4f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.66679c4f","@crave/farmblocks-hoc-input":"^1.3.0-alpha.66679c4f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.66679c4f","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-mWcXNpvXmtOd6pSEShJEeDQa90Z0/4OcRxbv92LURlENTIePPVbG28UbiJ0etnEc80PvSgR/M09QC4HuQzQ9IA==","shasum":"ada175cf1870abb782126a28a85aefc872c07770","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.66679c4f.tgz","fileCount":9,"unpackedSize":21820,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9X0MzQjbQBA5sxDi9aB8qF3AwSMmJwM/NqTfDfLZiCAIgfF5YnYF0rQf5YKB4vWh/Sxta1t/dSohw9t87+eTq5YQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.66679c4f_1521036074098_0.5109451263236331"},"_hasShrinkwrap":false},"1.1.8":{"name":"@crave/farmblocks-input-text","version":"1.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.1","@crave/farmblocks-hoc-input":"^1.2.6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.8","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-q7GGz1H8rwNwMMeYcPuJli6QVuQdXwisqUVvneff1zgK+8Gpaaep85AAKGg8ETTWmmWv3+5Cz/4nWwJ0vJba1g==","shasum":"1054c4940941a5b6435a577644a19c5c9031ce6f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.8.tgz","fileCount":9,"unpackedSize":21731,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICWn2cBFXl3rMReu5pC+jksf6HPuMX4ir6ebLL9qXcnoAiEAoY1jRcH8e2XTpJgGL6bhGJH06HnxFRe97rNvMiZETMI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.1.8_1521037376067_0.24675105921623586"},"_hasShrinkwrap":false},"1.2.0-alpha.7615e6fa":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.7615e6fa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7615e6fa","@crave/farmblocks-hoc-input":"^1.3.0-alpha.7615e6fa"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.7615e6fa","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-vjaE92aiyFJUePj/Anzyo6fSlR31Lhg3crwEH6/7qEO9f6I6GmkeoChHA8FNgx7xi6nEGFgst+qCRC8EcKCLAQ==","shasum":"490cc270914ad7fafeba0cf1cfa3c7150b17b09b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.7615e6fa.tgz","fileCount":9,"unpackedSize":22060,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHzT9ft/ZNrjOqN6Tzuwfhq7Fv9vgwRgrw2yMvFZv2BuAiBaoBXZjDnz6Zgs78H08m2Dq2rsXTjFl2vQiNr6u+Ve0Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.7615e6fa_1521050215931_0.6003501340836264"},"_hasShrinkwrap":false},"1.2.0-alpha.26941b71":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.26941b71","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.26941b71","@crave/farmblocks-hoc-input":"^1.3.0-alpha.26941b71"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.26941b71","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-3hupqey1vtAEmSiVq6lnXFYSD9U//mqKwkFQvkFmP14I3NtYG22UGujdcmEQ0NjI3z/mOxFeVeJ4NXJ4AE2+ew==","shasum":"4813e71a9b879a695dcb46ae822c2d05a642fe85","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.26941b71.tgz","fileCount":9,"unpackedSize":22060,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzHd5hKPkXkN50BJSy4vNgnynLJLDgFFJ+9v0pvsQcegIgEWBwJSGr/odfGAYN2IwAla5juPXtZNUB0YBKLu36bew="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.26941b71_1521050569093_0.6184286332191038"},"_hasShrinkwrap":false},"1.2.0-alpha.c41d0cab":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.c41d0cab","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c41d0cab","@crave/farmblocks-hoc-input":"^1.3.0-alpha.c41d0cab"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.c41d0cab","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-mkZkgoWCoO17RxIgis0cQyH2IQPbv8X3IZRCaF8CuQ1TGky6zL9JsvsTPvrgdtwy5q5jPXNuv56S0py5HaOCqQ==","shasum":"88f543458628006d2b1c6ed594d638c984da147d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.c41d0cab.tgz","fileCount":9,"unpackedSize":22060,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFaD/6JFkCP+IzGsLKQ4qqxseIyhKxrKzrKvezeJbTlAAiA7CkF9BmKJfwMTwmeowaP0NtEZZKwT44G9iczT2bF52A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.c41d0cab_1521050790978_0.5480401618088997"},"_hasShrinkwrap":false},"1.2.0-alpha.ee0b6b96":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.ee0b6b96","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ee0b6b96","@crave/farmblocks-hoc-input":"^1.3.0-alpha.ee0b6b96"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.ee0b6b96","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-9CqzyfH/BqOOCLL07wQyI60ufc+WbM1o6eZesd65S3tRB4doUB05UDSzRhY2idGM3dMgtr1AxJSB/JY+RGD93w==","shasum":"f88b8ded11afbff7d69b207419ef71a5ea7e0a08","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.ee0b6b96.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGILW6JW3uqGXjh29u/x3N1ddlmX08SQttjmthJZwl86AiBsilBzXjtxXHKR51fh3q5baprXyPXNeZkXe/mTQQWmtA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.ee0b6b96_1521054460737_0.5381775038757852"},"_hasShrinkwrap":false},"1.2.0-alpha.f4d95bec":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.f4d95bec","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f4d95bec","@crave/farmblocks-hoc-input":"^1.3.0-alpha.f4d95bec"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.f4d95bec","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-q+FlnvHC5aW/T1B2/PdNXKNrE0tzuIntuW9iLU8a46nbIB2NzZ/IJAHO0ch3r3u81xiDaJoiD4+dRYhxstLINA==","shasum":"0111533216fe9424f49b048d4dca8e0dd3a85bf7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.f4d95bec.tgz","fileCount":9,"unpackedSize":22060,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAN6CORqY+0cPPe0v/mXXsJJRJVrDQbKEJIaGRnecqQeAiBC6xN4di8LnnJyUqB8z1a7SEts6jDqmI1KjH7NoPCrmw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.f4d95bec_1521114844388_0.46376776796499586"},"_hasShrinkwrap":false},"1.2.0-alpha.1cb5bff7":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.1cb5bff7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1cb5bff7","@crave/farmblocks-hoc-input":"^1.3.0-alpha.1cb5bff7"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.1cb5bff7","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-VV1Ty6sAlrL/LtXNeQwPcX7iGo2ibinLmkD6KEyg56O7mwyiJhU++7pZe0tVxRV34sobXCqa+VOC48TAhuCEdA==","shasum":"18f55122ba891d162e68037f8cee82f4265bac2d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.1cb5bff7.tgz","fileCount":9,"unpackedSize":22060,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7Y3ZAA4pgwfC/Hn49eeQcg4qx5MeEGvpOeeliNJegjQIgX3K4+u1pacd+Ej2hQWtim+WOlw9GRdrGeE+ZSMpK/NA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.1cb5bff7_1521125738745_0.7826362369516482"},"_hasShrinkwrap":false},"1.2.0-alpha.7bf79ebe":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.7bf79ebe","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7bf79ebe","@crave/farmblocks-hoc-input":"^1.3.0-alpha.7bf79ebe"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.7bf79ebe","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-oP+7PyiZpMjTcKyPIgu0YbnDxKu4DH80OKsDvuCXdiQty4RZAd5LBym7rWJuZimuyJYvDl0muUVvee6RIrjwNQ==","shasum":"bcf4b9a5389b666d0bad37a8a2e55955ff153b0a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.7bf79ebe.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCD6jBPmPPS/Mxdj+MAYom6Ov8PXO9+kJbQzObwXnn5uQIhAJKsQp1liSnm1CVEihzExctyapW4UP9Fa8rqbZHto5YS"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.7bf79ebe_1521126044200_0.6687179441299249"},"_hasShrinkwrap":false},"1.1.9":{"name":"@crave/farmblocks-input-text","version":"1.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.2","@crave/farmblocks-hoc-input":"^1.2.7"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.1.9","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-n3ymPvP0MDvIjJZjfa9xTxCiD5Sk3r+ExH69CaCrYjb2VoYbn6ZtS06gRGDo8KYqgc64bX8Y5T1b+CFWRJry1Q==","shasum":"5eb7b8fbe03d55f947d964b7cdd16e64a57486d4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.1.9.tgz","fileCount":9,"unpackedSize":21971,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHAToYJYhjiMQZoRElchjETbYwY0zQfVPmVE3UvzkKmOAiAtbFnhvdfG+fSZ/AeqfQHGnS7du9QS9l9lEJjJEL5ajg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.1.9_1521126261708_0.9680871527984427"},"_hasShrinkwrap":false},"1.2.0-alpha.b15bc255":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.b15bc255","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b15bc255","@crave/farmblocks-hoc-input":"^1.3.0-alpha.b15bc255","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b15bc255"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.b15bc255","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Go/n0cO/qTQFpqGm8F8dQNcnVOZ96HL+A2uUvBr+LEn7y/yBQ4axfV5U8irlf9RR2dYFd0efXYgaPHBt44BBJg==","shasum":"f01661d224903f82fa9766e71e655a3e5bcd695c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.b15bc255.tgz","fileCount":9,"unpackedSize":22713,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBTN8VOqDLtb4bhj1M75QI28GZpEZ6k7iZmTZ2K86UWYAiBoiRwQi6oAOr69vQD4Aw8T4wQf6+kE+o0HLf5zh+OC9w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.b15bc255_1521136361392_0.2624013453291383"},"_hasShrinkwrap":false},"1.2.0":{"name":"@crave/farmblocks-input-text","version":"1.2.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0","@crave/farmblocks-hoc-input":"^2.0.0","@crave/farmblocks-hoc-validation-messages":"^0.2.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.0","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-JzyryJ0F9L4bZVJV5zLjw+/tOnwRNA+ODnucald/LiXChcVdT9WE62i5ooLUBMQi6fznZx2a+1xvGvrVIGz7VQ==","shasum":"4999128f96b24cad6cc4543b0e981b289d13b3fd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0.tgz","fileCount":9,"unpackedSize":22608,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAkgUyBxvhJFWGaLKCXjTfWSVvAmTJM2Puplekbw+/jwAiEA0ak7yp7xj0Q6mdPKKtmMGL/9M9JHmGhb0dZ8KLLkIIA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0_1521138025901_0.47861056575775685"},"_hasShrinkwrap":false},"1.2.0-alpha.0e6bc9f8":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.0e6bc9f8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0e6bc9f8","@crave/farmblocks-hoc-input":"^1.3.0-alpha.0e6bc9f8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0e6bc9f8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.0e6bc9f8","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-IM2tWbeRhr5ltdSdp6zqDue1JdnZxz2zIgnLNFcDQL1YevFhaAPVaBMGDPRklyUq7BmenGxdpBp8EIyXcSHXPw==","shasum":"574f82e06915511862fefc7624c65452a9673d3c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.0e6bc9f8.tgz","fileCount":9,"unpackedSize":22713,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5dHpYjRimiZwLvO8sbX4XnDiuh/H21TrkhE0shcWvRgIgWW2xTJBltNleymqTQZDH9E29eZ4wZW0PXNz821CGlU8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.0e6bc9f8_1521138034324_0.061932092379237025"},"_hasShrinkwrap":false},"1.3.0-alpha.8dc14280":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8dc14280","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8dc14280","@crave/farmblocks-hoc-input":"^2.1.0-alpha.8dc14280","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8dc14280"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8dc14280","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-J5cnsNfRRNQwdz9k1ZDC+ESEMvFLwI6lLjk6XrAZ8NrzGfVQ+9ejLXf2lSOnmg5i+de1CNMpKV6nV1xrrk599w==","shasum":"f27fff9d5d19c7b0fc6a584c4b005b089660b056","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8dc14280.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCk4KDZcWsD7FatLEVLfvqUtY4tiKXcgS9FANBXYDZ2yQIhAPZthuqcvU+C3VhUUAz4xkW54vPYrP0hbSReYpqlxnDw"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8dc14280_1521141570362_0.5753705880489857"},"_hasShrinkwrap":false},"1.2.0-alpha.8ffe671f":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.8ffe671f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8ffe671f","@crave/farmblocks-hoc-input":"^1.3.0-alpha.8ffe671f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.8ffe671f","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-lREmepUSDceu5sZfbyRdUdRZYwYNGlcyYa3fpa0v0G3/lDcZxoSJoM2lmRHMhLGrCCaz9KhS3xjinZih42K3tQ==","shasum":"0f2d0c06106a56634a66456cd5bafede49adaf58","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.8ffe671f.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYBbWKuVQT8dWRPjSR7Bhb/7dmE78hANiA/6mT3qjZWwIgT4waUocBXT2GzxJtQ7F2l5Psm4vOrtb4oEiLJiRnY64="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.8ffe671f_1521224076289_0.22750414931942475"},"_hasShrinkwrap":false},"1.2.0-alpha.d39611a3":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.d39611a3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d39611a3","@crave/farmblocks-hoc-input":"^1.3.0-alpha.d39611a3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.d39611a3","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-HpGX1jOQh4k6lwNNo+1lfT+EtsOSOh0CmHL9mJmYGNzAqb0Ac8GMf56YAslp3KJArGAaHWhgVp9KBl6dI8KAxA==","shasum":"0ca31b8743b5d677beeb66766ccaa8b82c109b7e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.d39611a3.tgz","fileCount":9,"unpackedSize":21580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkEYb4h3FqVBKCay1m3oGBKDaFto8PIC/P+J3FAUmmNgIgW0c5iBX8C5HXqawhX7001zZVkc+n4IF4F8QZAVZAxgI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.d39611a3_1521225450842_0.6546171763719792"},"_hasShrinkwrap":false},"1.2.0-alpha.4dcf9d8b":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.4dcf9d8b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4dcf9d8b","@crave/farmblocks-hoc-input":"^1.3.0-alpha.4dcf9d8b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.4dcf9d8b","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-cD2vvzjAb5JlDw1RrSStfbuvO/WD80fKU9IaLv7gQtsNjnr3i+1doNdIZ7QIKOH208qTKrLICBkpas47kV6qVA==","shasum":"6e576c320b38991df90030dd8e02693fd819b759","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.4dcf9d8b.tgz","fileCount":9,"unpackedSize":22300,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDJubCfy9N1wNo5+L4LwZarN74DMr+xE58bcQxBhqEs7AiBVVrqOW+7Z0+JFGhgaJeUsMH8k+rOzlGm3KfjGc7Uvyw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.4dcf9d8b_1521225577534_0.29669443618238955"},"_hasShrinkwrap":false},"1.2.0-alpha.b68c91dc":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.b68c91dc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b68c91dc","@crave/farmblocks-hoc-input":"^1.3.0-alpha.b68c91dc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.b68c91dc","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-LG5vaDLcIykJaHbN+N248GxoqtnweKSZ+OJEs8hIkdNAWggReFnNLI3dA2OjSqHaHC6B3htzSg+aL+TMEwiTBA==","shasum":"8ac409a56df79263c41f7894a7273a7f228835ec","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.b68c91dc.tgz","fileCount":9,"unpackedSize":22300,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDd9eJnc0G0Nf/eiCySuW8VbakjpLm4skTh5jF4AL2J9AiBBDldevXinJKS7vH29Jvux4rsrUdX6Zq3zXzAOuA+fyw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.b68c91dc_1521460072585_0.6528204701067217"},"_hasShrinkwrap":false},"1.2.0-alpha.4078b107":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.4078b107","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4078b107","@crave/farmblocks-hoc-input":"^1.3.0-alpha.4078b107"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.4078b107","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-FIzFiYD0pxaK+G04IyinwIKx/xj7EzJa5MOiZj0Qp44y4muYTxAFH9CDaT6hjxmK+GlPXX48VoScwgM6eAytUw==","shasum":"916252ad2e1b9ff667b81987396c2e92a4e4a17d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.4078b107.tgz","fileCount":9,"unpackedSize":22300,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHB0VIcuftXoKjt9HeFSvyqbIDu3NPwz2wpU/6pW2vEtAiA/8BbvVt/x7LxYmqEl+9TdicNm7dmSC9DdLHU93wxdww=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.4078b107_1521461308978_0.7880602050858339"},"_hasShrinkwrap":false},"1.3.0-alpha.c4761b78":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c4761b78","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c4761b78","@crave/farmblocks-hoc-input":"^2.1.0-alpha.c4761b78","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c4761b78"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c4761b78","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-YV9s7AdjqYppd43nfV02ajhx+ZcliQkR+lEAjiyHjhuNaOv4Ti5me5kDCWGRZWxKREhx/p7XbM0rb/2X5fVUTA==","shasum":"c46eeb12bd50bc54d29769051ebd6b7709134f2c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c4761b78.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCorhqPc4lLd87IOSkirREItglzi5UERQgurU8GmNZA6QIgOdov++NYjsqmCvIALEJRIN4ZvthqYgLKj9wvJ/2E+Z4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c4761b78_1521472678794_0.47147649577593054"},"_hasShrinkwrap":false},"1.2.0-alpha.4ad7774f":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.4ad7774f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4ad7774f","@crave/farmblocks-hoc-input":"^1.3.0-alpha.4ad7774f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.4ad7774f","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-+9oHYXx+3KBtWzpWtcKkTheBc/PdgwXl7oVgxoyLaMBMCJKvfvYopjfsL/wPTGFt+Z9PIPuA5fbzy5QKcLQA/A==","shasum":"54897f7ad50a4dcafbedccb321c1c8083aeb9511","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.4ad7774f.tgz","fileCount":9,"unpackedSize":22300,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMNH2YySoAjF1NnAr7nQjQ8KHq/9VcnF3zLefcHlbNdQIgR4RTEYBKkIVTNivqYsFbC8cxTVxSxvbsycCUlHJW7Pg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.4ad7774f_1521479190450_0.7499738981219608"},"_hasShrinkwrap":false},"1.2.0-alpha.e5432d16":{"name":"@crave/farmblocks-input-text","version":"1.2.0-alpha.e5432d16","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e5432d16","@crave/farmblocks-hoc-input":"^1.3.0-alpha.e5432d16"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.2.0-alpha.e5432d16","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-1cZSG2U/iWyuGne3ubaGwlxVSmkKFH4ULJjWDTpV7KRXLiLQYSzak4huBWndnltS5Fj71/GJ5u/ctwPnhLFvkA==","shasum":"306d7ef8f105f4036903b1e79d1f9e2fdb889fd5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.0-alpha.e5432d16.tgz","fileCount":9,"unpackedSize":22300,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+v5ssnTy9cl2n/RAmdo3lwERzcQ/H5sYv+uwFcq0jNAIhALSFEZLQVLkFwWSVtfIeMEQJFyMtmA0C3rm8mbDXJbb1"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.0-alpha.e5432d16_1521485301158_0.7949272169405361"},"_hasShrinkwrap":false},"1.3.0-alpha.52f23955":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.52f23955","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.52f23955","@crave/farmblocks-hoc-input":"^2.1.0-alpha.52f23955","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.52f23955"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.52f23955","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-6anZeIrAQ1cmNLCgn4sXzPAQTfftqQ9TIoXb0gRsgT6Bqm/2urVcDd4Ggey/uYpGbOAl1cpslqhbvKmZs8PydQ==","shasum":"27c7c42a707c7102afdce73c8b5b4973d5b0a4a1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.52f23955.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB3Rq8DTIhQHJ6JdzEkB0rv+pKBbtjeOh175sZqm2FjMAiEAvUbtcEl0CDJM0T/htrjiYCveMF77TpdtoV/CNp+jKVo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.52f23955_1521488565758_0.1176614969111276"},"_hasShrinkwrap":false},"1.3.0-alpha.cd64f3d0":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.cd64f3d0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cd64f3d0","@crave/farmblocks-hoc-input":"^2.1.0-alpha.cd64f3d0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.cd64f3d0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.cd64f3d0","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-zbulYuJGMTv9e/ojjBXb8Ta8zE/P2osLCCkzKulrFvriOZzk3XFP9xHVFwicbdYBBpkauPM6zXCV4SjZB5q69g==","shasum":"2bbd91befaa3d7f929d844d1c4e415aeee3f0d77","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.cd64f3d0.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCnYOywcLM72eD6tWWmpO91JunLyQK/M2QZhGUQmUehtwIgWuS8o8sLSVh1I7M2ZCf/Xel2HZqyvMFhb1+Wz4VtpPg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.cd64f3d0_1521549490641_0.6523128653069472"},"_hasShrinkwrap":false},"1.3.0-alpha.c7796535":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c7796535","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c7796535","@crave/farmblocks-hoc-input":"^2.1.0-alpha.c7796535","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c7796535"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c7796535","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Am4gV3DJaKXes0XoLptFnaaS9XFYayvhd/wgzE7HdXOZpmWw1+HXutJq67Wu/HW0jqS+Cdj12BInWb5dwUKPDw==","shasum":"19c9707bac85e3f810fa6c9b8508a1bee933c9e8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c7796535.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDe5nL5H7+VVb8+w+jj96PaRNz3lQAlo7geDq+s4exD/wIhAJut/nXdMydBnvmetnApb5a63UVTpKc/yhgAPjxK3WUw"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c7796535_1521566773529_0.3459733769460043"},"_hasShrinkwrap":false},"1.3.0-alpha.6c3920ea":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6c3920ea","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6c3920ea","@crave/farmblocks-hoc-input":"^2.1.0-alpha.6c3920ea","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6c3920ea"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6c3920ea","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-l2H9n+2obNGKSHHeLZmHQrW+wwst3d1y91zHkDYSZBZagg5+qvGCgyyYBeGFIqF2TJ/1Nb1jVSmuQ15W6AMYHw==","shasum":"8dc16a8fdecffdd07f49e735ee0379e14d79bb52","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6c3920ea.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAxAAxJOt1oKNkJeil2FnIMd+v1TgE68897eOGlwny7hAiEAudA7+71hVKpJX9rKpL5ee3ud2Y+6Zqaqxalzi9dDrHo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6c3920ea_1521567712384_0.5102204031964106"},"_hasShrinkwrap":false},"1.3.0-alpha.c15cfab2":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c15cfab2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c15cfab2","@crave/farmblocks-hoc-input":"^2.1.0-alpha.c15cfab2","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c15cfab2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c15cfab2","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-xTDYcBOsXZEFxarGmfJwlmUsXWsXEMWM1LpC87D71xR2JH12uCSHlJd9lQYPaq+zhN/ii4TDxIg6GQWngCqi3w==","shasum":"bc985b43845c955e88c6a7bd1542a770c7758f39","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c15cfab2.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIApu06ZhFoRiQIS6iev6Il2HPGC3UkGjd1QJ7JyZkxVxAiEAh3XBUha8mq4250wvZghqDJ/vooatuHJloiE+4641afA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c15cfab2_1521568384572_0.8054278309431966"},"_hasShrinkwrap":false},"1.3.0-alpha.8d069b3e":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8d069b3e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8d069b3e","@crave/farmblocks-hoc-input":"^2.1.0-alpha.8d069b3e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8d069b3e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8d069b3e","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-8jWUXDENNzPi7SfBkbweKbvCRJruJsM3LkK+etS8Xj+PSlrZ9fT3q6ig45qbI4bwXbz8DMvdlHP7I8w7ISgNlg==","shasum":"16cffde82f09b4a89407cc46d6f47423f28ba912","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8d069b3e.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzBMOGFHeYPC3S19RHLSFcMqSiwtZYBAmogTJ9wSdBeAIhAKEyEThFMDMWO3n+O/QkcRdnT4jSLh4qTDbMat0M7tNw"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8d069b3e_1521576106766_0.19143463286678108"},"_hasShrinkwrap":false},"1.3.0-alpha.0d8025f3":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0d8025f3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0d8025f3","@crave/farmblocks-hoc-input":"^2.1.0-alpha.0d8025f3","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0d8025f3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0d8025f3","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-eTF58JKHBdcZ17+IriRZpphLSM5vTR5UmJCgxvxJehXdXYOtLZaA+F+bFmr0j7ybI05QPyxFZbFUXm9OmuPPbA==","shasum":"d1716b34a13240dfa91eeb6dc46a47ef5dab92ac","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0d8025f3.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID/dPrPdC8rUEmz68AA5fQHuUvyfc9dN/AIgosewzG3BAiEAzpHVVqL74ZM0VT0b+iMYF0p8zZDU63s236U5IXy0lK4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0d8025f3_1521578842092_0.545495130002742"},"_hasShrinkwrap":false},"1.3.0-alpha.ee27b8f7":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ee27b8f7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ee27b8f7","@crave/farmblocks-hoc-input":"^2.1.0-alpha.ee27b8f7","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ee27b8f7"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ee27b8f7","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-j5rVQ6F6xx99T99ij9Y2Z+RJwya0VkFWSlFwSC1yhneOHm0+3SYzU2FzI0MyK8aVRqLkcVn9sZV2HSh4MUbtPA==","shasum":"a6c28665115b1332ce1cb8e6876fbb2224355ad9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ee27b8f7.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFtCBvRlZetNIAe5rdkIUnz8npK1ehKybVKLylB2UqkwAiBHdI3tPuAnK/o6cvxcr84Wo7F+axacqD38huya7YmNHg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ee27b8f7_1521579705365_0.22607595833357785"},"_hasShrinkwrap":false},"1.3.0-alpha.b20e5c2d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b20e5c2d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b20e5c2d","@crave/farmblocks-hoc-input":"^2.1.0-alpha.b20e5c2d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b20e5c2d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b20e5c2d","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-AOLlqXKvYHCg6bEe4Cg/LAiujhn0ycvSSrLHDqMaFBX1WpBYMOwFjfSeWxHLcNi62eS30RhUBrC0v2UJz45Vhw==","shasum":"1dc025cd81df0e81f8d9544513b3fd9b41d1a8c9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b20e5c2d.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCE4VUP7wBKTlIubYGZnQSdviRgDscUZJtSQyr7A5W9sQIgEJ55lobBo/cI0vBxvTqvSefTAf6a4L0cd1kHE5iyLgo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b20e5c2d_1521636925225_0.008031150688440736"},"_hasShrinkwrap":false},"1.3.0-alpha.04e0eb48":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.04e0eb48","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.04e0eb48","@crave/farmblocks-hoc-input":"^2.1.0-alpha.04e0eb48","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.04e0eb48"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.04e0eb48","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-luAoxB0Ha08qPrQzhIawiVK0bndAeSJDr90Gl3DvmL1MpJNH9JMmo4B6RkPoSoYH7A+PXeG6Jh10fTwde4xAQA==","shasum":"08899bc317a63bd055316090ffacefd5fd7d3dea","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.04e0eb48.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDsfjruVS43VJ5/7+uck0sKknNqs6iZoMqylp/KfPY5pQIgPQ5b8L3o3AvpSkHjyRThzu2pwFWdEfbsrG2amvuZ08I="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.04e0eb48_1521743967220_0.22107867675897208"},"_hasShrinkwrap":false},"1.3.0-alpha.5df50977":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.5df50977","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5df50977","@crave/farmblocks-hoc-input":"^2.1.0-alpha.5df50977","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5df50977"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.5df50977","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Iz1NeqkWfuYPJz18V3+TujNsj2klyh9IIDfq4/vqOIs+LY4Nu49q2Euv7vdMBByZSj6HQAZOFFHeSCg06+mG7w==","shasum":"7129a42a96a7aa06a5dec044d334709f66d6d58b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.5df50977.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA8fIZL46Pa45zZ5lP4X7NmrofuCgFrDUNMQkkk9jw/2AiBgQg35t7p3seDHg0UbLWtHYgiZHzp+ajybLPIy6/Jz4A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.5df50977_1521804838870_0.900802385058969"},"_hasShrinkwrap":false},"1.3.0-alpha.0d5439dd":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0d5439dd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0d5439dd","@crave/farmblocks-hoc-input":"^2.1.0-alpha.0d5439dd","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0d5439dd"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0d5439dd","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-r3qOfcAG16jiY7wTi2d/qXFOnDMSklC1Al+Je1p89C20MY2J9DMaXbPsLkjgy0g+Yw9mQn2bpzXFZefqeJsOGA==","shasum":"004625ab22a20bc532ccd9218a87466944bfd39e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0d5439dd.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJxuJO9wR1z8wvgp6unWzfp19Wu8xSDTwiUpW1gRjXbAIgMQptSA6uat7YxlwS4hub7ZsHcuybxVnMiLAUyI4fiAs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0d5439dd_1521808653732_0.08832841688685078"},"_hasShrinkwrap":false},"1.3.0-alpha.cd3bfde9":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.cd3bfde9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cd3bfde9","@crave/farmblocks-hoc-input":"^2.1.0-alpha.cd3bfde9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.cd3bfde9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.cd3bfde9","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-gKV59FpkuWbSl6eaxuWaV3B2LhMjyDhs5x8hd8+juW75nvM0NsxIuc4eYCEfQyLDT6Rbpc86xDYF1bYXI+AJTQ==","shasum":"152b9b54c5e98719f87a56dd3a562b9fcadb15e4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.cd3bfde9.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDxlzKE2FS6iw5Qwdm0hXX9ZnHPnOfB4dK0WPBnPFf1lAiEA+NlnMmKHv+GDVYtCAHBjwsEz/elGFzpjpFgwXHP1uY8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.cd3bfde9_1521809182188_0.22763188212338847"},"_hasShrinkwrap":false},"1.3.0-alpha.d91740f5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d91740f5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d91740f5","@crave/farmblocks-hoc-input":"^2.1.0-alpha.d91740f5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d91740f5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d91740f5","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-flHYGP5OVmS50qre/DvXiEk3j9VORhdRDZsSsJXw9s+31juSmQO4GDS+BS5YBLdf6JFzpc7nU9JnHcU6wxDfoQ==","shasum":"7659c9a64b2eba60ed7a4fdafaff227af18bcb59","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d91740f5.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCV5cLaNdPU44ZQOs9vP10xuahwZBiD52WUabYlhha4SwIgeOPX+Qw+S5gNouRZFXnH+rWbs6QjKQheYT9qxNIkBAQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d91740f5_1521810075420_0.1029977617247968"},"_hasShrinkwrap":false},"1.3.0-alpha.1ad366bf":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1ad366bf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1ad366bf","@crave/farmblocks-hoc-input":"^2.1.0-alpha.1ad366bf","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1ad366bf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1ad366bf","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-cJjxXo2PoV8a0icJtgaN83HQ/DRjHs/aWvdyPaLx+R8W4d/eTKP0potuJQ1MQ+JfACbv9uJmTZVUFI/CUC0C1w==","shasum":"e1c11abf080069e0dafb1cae2e23924b11c2d4fe","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1ad366bf.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFu8h1P3VXKltm5X3IcbLBEkD8ma5Z6hOSzxSmvh95ahAiEAoMRTPd5jJ2JRyXRLhMlYBh5cWLjcT+iFPFBISzX8YDc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1ad366bf_1521813038903_0.3141292497270345"},"_hasShrinkwrap":false},"1.2.1":{"name":"@crave/farmblocks-input-text","version":"1.2.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0","@crave/farmblocks-hoc-input":"^2.0.1","@crave/farmblocks-hoc-validation-messages":"^0.2.1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.1","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-yIE9eva1OfHyoKxjOFjA1YI5J4qvtcFu4TiTzsSGs8e42RYsysu/NbvdGLreEvfIobMRUnWejBaFOmWxNLwVHg==","shasum":"ad88e7de5915ff35b7baf6248d04624d08d02d23","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.1.tgz","fileCount":9,"unpackedSize":22848,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2KKejvq1S//KjU4O0its89V+hKLx0UUriI6V0f7ggRQIhALpIN1DDZ0MMSYEX4ZGxsSMpuAN/IIwBdiUQIQECHuRo"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.1_1521827349195_0.5238573281515724"},"_hasShrinkwrap":false},"1.3.0-alpha.9ac95b05":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9ac95b05","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9ac95b05","@crave/farmblocks-hoc-input":"^2.1.0-alpha.9ac95b05","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9ac95b05"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9ac95b05","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-j6FZt3gybvICs/B2xgRxQLLON4ASmOSUf4Ktego42QBI+TwzBQS521RFfeWkJhs6cIIUl1cATiXBggRO/yWmLg==","shasum":"c29011646fb4ff05b4fb5c8a545d3915ef099c5d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9ac95b05.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCokuqVy/9JTofIAlKdOiepE0VCHnHjKA7fPf/y/3QU4AIgavXcYHGE+OVRVYIKSMc2yjQyjURSKmUdcpagR0G+iB4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9ac95b05_1521827675614_0.09131977613146436"},"_hasShrinkwrap":false},"1.3.0-alpha.eb7e13e2":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.eb7e13e2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.eb7e13e2","@crave/farmblocks-hoc-input":"^2.1.0-alpha.eb7e13e2","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.eb7e13e2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.eb7e13e2","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-B+iNkPU5BR+vMC+F3WXUc/M02wqgdIQMU5SzcEA+yU9W8gYIGqdAByUBJZ8gaTbdZOoZbazMBHto7yI94OrkNw==","shasum":"5bc9e1891f90248ac3516046da2a4f138d59f390","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.eb7e13e2.tgz","fileCount":9,"unpackedSize":22952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA5w8b3zvS2aK5SkJearV2cb9aZanRgEHqgRKy3BOUhFAiEA5Ph/qacAWmi4dsoXdU6+vtlvyWcmY+V0F6yGtrXrshY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.eb7e13e2_1521827709708_0.6074047347078211"},"_hasShrinkwrap":false},"1.3.0-alpha.6b203b54":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6b203b54","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6b203b54","@crave/farmblocks-hoc-input":"^2.1.0-alpha.6b203b54","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6b203b54"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6b203b54","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-2lh+ydCeilDwOstpH53IEJCRuMM1701vMnXepzLksU8qFnWRXxx+jWFwjLuTzD9uYw2k87n876i9LDnZDb46Qw==","shasum":"0f832ab0db700d50c85d206d2db03eb27f5c8a59","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6b203b54.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICxUjaH0VJ4BCg6GBPtQSYBSRRoVVN3y1s1WrF3agxWxAiEA24kxlQMKwzbANLwKNvEV/g1jKm4Tni0F2ARGutpQAjU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6b203b54_1521828798002_0.9216221937024915"},"_hasShrinkwrap":false},"1.3.0-alpha.b067b771":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b067b771","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b067b771","@crave/farmblocks-hoc-input":"^2.1.0-alpha.b067b771","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b067b771"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b067b771","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-8sF7YOC4j8UrbO1oNhEz5+9VgZ+dKikjx1xmfkijz8gniCNMY8cnjjpZ2Ly1YXVUT/yCmIH7VfwI5MFksBQ6KA==","shasum":"9316e0c1e56c108f4a04b1734cb31c77e776b7cc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b067b771.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCNWuQMvbj7PnlnJOZzlQehqzSuV4WwX6h0srmVZBJiYAIgEFclEAoorIZ1nT4IfFNggrPNppYMuXfXWRQ/2qxMj4k="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b067b771_1521915979886_0.705810941682159"},"_hasShrinkwrap":false},"1.3.0-alpha.1e9d369c":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1e9d369c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1e9d369c","@crave/farmblocks-hoc-input":"^2.1.0-alpha.1e9d369c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1e9d369c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1e9d369c","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-2jxPnLaNIaZPjhxxF3VZd2Xlt4GD3L6Gg1jw3QVv+z1K6MEvSkuE993XcF9BcjsZ1iqnV+q9AMb+LxZVisKFjw==","shasum":"9b72d8f6ab145290e2134eed1b7063d4dcfdd26f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1e9d369c.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCw2g1in5L1zAaFt409UjYjAtzITaAhnhC65iGudKI/8wIgQBCduULpMQuoFjf3sqX2pte/7eXVb+6HzEaAu8XLef4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1e9d369c_1522070984103_0.659433371405719"},"_hasShrinkwrap":false},"1.3.0-alpha.ed271340":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ed271340","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ed271340","@crave/farmblocks-hoc-input":"^2.1.0-alpha.ed271340","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ed271340"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ed271340","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-aClllM0nGosaac00fQ8DGAUfgU220CLfQHted96aYYer3hEtjD1e5leWck3a/lOmRBR7uPyI3APhlPgK9BHcFw==","shasum":"9e5094d48d0fbc2105156643cca6f11f35ee70c3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ed271340.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDWXW9B+J1nUY9Jau0eVzfYVcr8Kx5m9qNoCyMlLq5MhAIhANJb6E6DyDGgRCwBV99msHPM79HMYxu9/ibcFRzob8xI"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ed271340_1522072293343_0.5338230779814259"},"_hasShrinkwrap":false},"1.3.0-alpha.a99e4a7d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.a99e4a7d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a99e4a7d","@crave/farmblocks-hoc-input":"^2.1.0-alpha.a99e4a7d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a99e4a7d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.a99e4a7d","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-RUrum9UWiF9cLJiSDe5qvKgemccl7MDKn7gcj2D9yP9L4AJz8W7/8yk26WlURYTuznGdQBDJ3wqY8vURez4hsg==","shasum":"182a2c6626a0bb7c7d1c83dade8f16c7422d7757","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.a99e4a7d.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKjVRUxHSF8Rh+YdhOsb8FYXSUhzx2RKP7JcJRcUCINgIgem1hdU5vtD3KONvlk869SnZFL/g2Kc1vTvbzNkgDrbg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.a99e4a7d_1522075612437_0.0641350408115724"},"_hasShrinkwrap":false},"1.3.0-alpha.3fb597c5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.3fb597c5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3fb597c5","@crave/farmblocks-hoc-input":"^2.1.0-alpha.3fb597c5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3fb597c5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.3fb597c5","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-cc1qmWNfXPEMU54RXdyDZdG15lkzbUbZd+uDFUCSDbJLA8q9nYS+c5NXdvw9cjNis9VGzompX6xH3I2MhD+s/Q==","shasum":"75e106cb080402189e2b736d1d7f41718c934def","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.3fb597c5.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFZ6OjcN2CMg4nzXoczfdY6t/2itIJHdyRttqpGVcE1BAiEAlz+tC/KJDb7nXkf+sqyzQ3EEjq+QgS6FMcdNorKu+vo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.3fb597c5_1522086849400_0.3092454831264215"},"_hasShrinkwrap":false},"1.3.0-alpha.bc8be1ec":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.bc8be1ec","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bc8be1ec","@crave/farmblocks-hoc-input":"^2.1.0-alpha.bc8be1ec","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.bc8be1ec"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.bc8be1ec","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-VO9Z5C+0TL8hX2iZ+QPjUvWkM6iOe/GPMS3phgD8I4OwMqodxE21os+PIwR2rotaURsxnUNkQUx5K48KCYiESg==","shasum":"58e96b1855f74e1c71a079674fecfb91fbc4cfd5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.bc8be1ec.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHPPVtHBmWi6gLUdlz+a+l3N7Yw6fQBlCcCfoJE7zeh0AiBKBVVaIwq6dnx3mA/T7K8aAH8lDJWrjO6/6fiYIkr/NQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.bc8be1ec_1522089559577_0.2728035119895511"},"_hasShrinkwrap":false},"1.3.0-alpha.77aeb025":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.77aeb025","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.77aeb025","@crave/farmblocks-hoc-input":"^2.1.0-alpha.77aeb025","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.77aeb025"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.77aeb025","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-YgotwgeS2BTBVAeKolpSc/5vr9RJeD9le2VLuDP/S0BUSUkcu4reZxf0EaWHQRnXCGY+68KrjxOov5ym8lKdFw==","shasum":"e1f4cd9a43dd1e6a3a85f07038359adda33a7733","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.77aeb025.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHboRTeEmL6B7uGUtZJWkH+dLne2CsmW2tJnJu2elydYAiEA1mkPyugRxYl4h3ADUpz8nGlcZaqXv8ozcZRqcLCjePI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.77aeb025_1522093566039_0.22117838004587353"},"_hasShrinkwrap":false},"1.3.0-alpha.276d5592":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.276d5592","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.276d5592","@crave/farmblocks-hoc-input":"^2.1.0-alpha.276d5592","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.276d5592"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.276d5592","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-2bZN/MKHy4DP4U02BsB41Ua7Hj6Q8dGn54Fpda8V45x1aCuEHyzBDPMZajaRAK+/0Fr+m2e3JBiG5ULBF9jYwg==","shasum":"c438f2a11ddc57424f4fcd9bd9307f3edb91d6f2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.276d5592.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCk5Bf9LD/vGoJI4/VwYaoy4hES61KxaZICYWoiDo6tYgIgVMgGK/n/cli6O1HuoqJ1irCswovODVRaGF0kwL/Obqg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.276d5592_1522154828629_0.8209739703197869"},"_hasShrinkwrap":false},"1.3.0-alpha.bf2cda46":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.bf2cda46","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bf2cda46","@crave/farmblocks-hoc-input":"^2.1.0-alpha.bf2cda46","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.bf2cda46"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.bf2cda46","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-tpPeHNkUmS3Zuig/ZmLaJlG9aRwhnI54etGyzco+r0PSrEoaANDOSW6zQORR4rruFJzkUno+ojPizwLtpVLIBg==","shasum":"5c74819582a28d619d90b24a641025794498d662","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.bf2cda46.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG0dW++Y1Wws91OlH0vhx8r9weNCov0QE/+Bf6r+NhlWAiEAzfpCV82BU9MOUuHDGUVl1bjJ2L0LZQrA+19W7y+/LXo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.bf2cda46_1522154940419_0.1432046498079682"},"_hasShrinkwrap":false},"1.3.0-alpha.101d5b54":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.101d5b54","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.101d5b54","@crave/farmblocks-hoc-input":"^2.1.0-alpha.101d5b54","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.101d5b54"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.101d5b54","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-MIz2csYhJ3z2LIubK5jym9zI7yNwvZbFxouJCratP/ngRqszM02/7Sbp9GtHOTEqiNN814jDBBw/ONoeTnh+wA==","shasum":"e5f2eff2d626a03f235da8d82e220d7916a375e0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.101d5b54.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD7l7lkMkXhKkibrh4nr87A3Dg8VJD1W+MdmXVW+dmaAgIhAJCiLdywx/dL6PLaS5sCIhxbyRQxVqBDomTd2KIbx4hE"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.101d5b54_1522155943071_0.9777041626313667"},"_hasShrinkwrap":false},"1.3.0-alpha.2af0c4b9":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.2af0c4b9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2af0c4b9","@crave/farmblocks-hoc-input":"^2.1.0-alpha.2af0c4b9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.2af0c4b9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.2af0c4b9","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ZkDWk5324mf7XVzPJuHnSbayenprY43nFMp5k8pv9FEsvS4lpaIPxcgPffeop2BTLe9iBVZxRCyK+IAXo0fOAw==","shasum":"a24de8df609a7edf773091438ba7daac6cbe3300","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.2af0c4b9.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC+a66kxb0+IYf1+WoWVdYMAwFDwr6/MuQ94r3LOqZT6AiByEWq0rFBFtntEP/Y39OFVuGkKP9iuBTlEmE3NBiBARg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.2af0c4b9_1522159173766_0.02389794424840419"},"_hasShrinkwrap":false},"1.3.0-alpha.f36a051a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f36a051a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f36a051a","@crave/farmblocks-hoc-input":"^2.1.0-alpha.f36a051a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f36a051a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f36a051a","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-t4uobY/gbwBo5HiguSaNXtKJ3OW+T5dCw91AT03m7X5xbm6ZSt3IwKkzVNrs2GPYpP9irjK/3mrWeXLliVDJcQ==","shasum":"a04da57a2a4ca55b94d84eaff3f5743d411d9fa6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f36a051a.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOk+1yQpcf5JBH3Bczt4vIwdodw1+Zkb9sy10L8hBJAQIhAM3xhyV9bvsmxFIW1HckQLeQYvohbpeRdsIt6X1UmXYA"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f36a051a_1522168697446_0.14523390853586227"},"_hasShrinkwrap":false},"1.3.0-alpha.dbbb988a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.dbbb988a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dbbb988a","@crave/farmblocks-hoc-input":"^2.1.0-alpha.dbbb988a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.dbbb988a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.dbbb988a","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-wPUlbvEq947+nb4Io32wzJnsEQ6jsfpk2pQfcQIDmjiuX94qc+LkNwfRTn2mtCee2zM345k8W3N41n5B2lhsuw==","shasum":"04e1c376722e2d4395343943a7b27151d561e83a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.dbbb988a.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC69K0C0x+wDU1v3DGjGjS7C30HZrwdIVvi/mZ1psGvvQIhALd8hTtp1womZp53qTMtIpB+NLpLCvCJQZFUIZsrzIOR"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.dbbb988a_1522169403605_0.4363256460855407"},"_hasShrinkwrap":false},"1.3.0-alpha.9888d709":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9888d709","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9888d709","@crave/farmblocks-hoc-input":"^2.1.0-alpha.9888d709","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9888d709"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9888d709","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-NXZsQtdi5JO0WBpwPnJB+e6rUkP8SCl+u7q0ioEQ6RpU/kjE5ed5gt28YSFZfieozNSjiFYM1vDw1zEA+Nu6TA==","shasum":"1951c14688425466ea445990fb0166f05da228d6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9888d709.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKAhTlR4qXJJl2f0pHEip9RysRAOOSYg5gHYYJlJGQ8AIgAiltqYXctdz2w2uk4j02I9ED5IPvkiXVZDqHF53zwDQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9888d709_1522174405990_0.9192821097554003"},"_hasShrinkwrap":false},"1.3.0-alpha.7c579cb8":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.7c579cb8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7c579cb8","@crave/farmblocks-hoc-input":"^2.1.0-alpha.7c579cb8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7c579cb8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.7c579cb8","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-fAIApWLLf2906ZAvxOP3wEgo8SgMcbuk6G83ehQ5wV6Dedb3x0cvqJ3Ay1JCsBOSs6lc7tUsFhpUhKItyRxiQA==","shasum":"e05e9fe01ebe6f6a3e1a19d223888b9b5ba83a1c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.7c579cb8.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDbysfWzBwsSymNe7rxyJeaxNPI76CaxN89ZYlKi+AiXQIhAPUitPeCNYCTGWCDUaaqRKe4HIUZWyzn8zouCeGooa3s"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.7c579cb8_1522181850780_0.5061054464676753"},"_hasShrinkwrap":false},"1.3.0-alpha.9c53f92f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9c53f92f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9c53f92f","@crave/farmblocks-hoc-input":"^2.1.0-alpha.9c53f92f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9c53f92f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9c53f92f","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-qY8qfKgKjjuQ7OGkC+KYeTttpbSV44y6DkiN0ElvzM7mCpB7YQlHpXLAjlFlEAr3yMUi2/2NOLR3bnAJz0sxnw==","shasum":"8415b83d09b1161b35e4b73a0fb9309d2c07ac3d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9c53f92f.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHa2fSUprbFXHseEOC4cKUfVQlTJRcsfMARcfWiWqdM0AiEAnZu023+Wgw3u47pPL0mmZJoXaZUspOg3A+amIyXpONg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9c53f92f_1522182721883_0.43546976167156015"},"_hasShrinkwrap":false},"1.3.0-alpha.094a4102":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.094a4102","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.094a4102","@crave/farmblocks-hoc-input":"^2.1.0-alpha.094a4102","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.094a4102"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.094a4102","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-b5718JsjZHoiJOGmDbMbxvIkM1NcNuLDzoXRiwAwuafNFlAQ9NZGsUWwvnkFC5e6gW4gV7DkP+Khg0LVGk+y1Q==","shasum":"06a365429b063f4e7ecee401f405fe13075253fd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.094a4102.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDchYRJFrtRvZ8IJ+GsvlUhnvLH+4wmYJRrPkXJHZiJnAiEAgnZsNVS2/99dMLLff68FvDgef3lfRpdji95TYHWgt8E="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.094a4102_1522183726180_0.9010973863329459"},"_hasShrinkwrap":false},"1.3.0-alpha.37c381c3":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.37c381c3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.37c381c3","@crave/farmblocks-hoc-input":"^2.1.0-alpha.37c381c3","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.37c381c3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.37c381c3","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-RPcf8yFCNLCWnuPNFTAbUQXftg9NA5jRzZqi14AbQYss5xBUGUfM1mD35m4gvjNuF89O94mldFkgPe2u75yj5Q==","shasum":"5c43fd885064f8055c6503e748b4409d3e913f90","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.37c381c3.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlfH6+9kgopaxR8qkVPAShKgW/5B+7R1pHls5SN3r6EQIgPECvLsPNYuVbcGzwarvhRuF4T0Ngu6nefvtq+t5GSxM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.37c381c3_1522245383671_0.8151790099571856"},"_hasShrinkwrap":false},"1.3.0-alpha.4d554aed":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.4d554aed","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4d554aed","@crave/farmblocks-hoc-input":"^2.1.0-alpha.4d554aed","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4d554aed"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.4d554aed","_npmVersion":"5.6.0","_nodeVersion":"8.10.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-UU9dT9FUi22R04BTtOrBWJ1bJqI92dggTPlxZ6ajxyysKKnotsewmEBZna7Er4d5Vlho2B7Icyn+VCqqQMcBKA==","shasum":"745cf9d67d11dc30116398bd1c9e7b7042d4bc67","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.4d554aed.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEPlabtbxNoO9yJOIa64zS5lgfHg+WHw0QgtXYiwJ680AiEAskphyizzpfnyEr0/spB2SfGHrrM0GRz2SERnOOOmF90="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.4d554aed_1522253609672_0.2648944549051515"},"_hasShrinkwrap":false},"1.3.0-alpha.44d32a29":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.44d32a29","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.44d32a29","@crave/farmblocks-hoc-input":"^2.1.0-alpha.44d32a29","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.44d32a29"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.44d32a29","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Uh2+vG4CFALR9gITdEFSuAR1XeDhgoGngjIYm/RZ7j+sIFJ25y+4nIUFbrCHOLNqZNkAri5tX0P0a5WN90WbEw==","shasum":"85d1081de919c4b293b3c65d89f614d9871fa7b4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.44d32a29.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDycinW6HZ8neWTETdjAfME/gmMZLfHxMHVavPyTO15jAIgYM3e8g3A0kcxuLIgpeV6MRME8oNBnwhM5ZkSF+h7o5E="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.44d32a29_1522258820114_0.06233546527246414"},"_hasShrinkwrap":false},"1.3.0-alpha.cd85651e":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.cd85651e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cd85651e","@crave/farmblocks-hoc-input":"^2.1.0-alpha.cd85651e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.cd85651e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.cd85651e","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-U2hT3WsrjtfWuc7ANIvgbe+wAHiUM5LUZXcRI3gBfaOcP+Fs4JzHaPcknRGg8zrBAN7QoruypWSyq9F8/soCag==","shasum":"b8532cd7a78e7c9603963e7088224366a322a7a0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.cd85651e.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAxJhzcFVng6P7Gv4QPzY1/8t8TjxaMlpH6yVl6A4zr5AiBNTvzWbwxfumGFPw2VgBlJr+StQlO231VDKDWiuJbUrg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.cd85651e_1522258899861_0.6156092051343685"},"_hasShrinkwrap":false},"1.3.0-alpha.3d2e39bf":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.3d2e39bf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3d2e39bf","@crave/farmblocks-hoc-input":"^2.1.0-alpha.3d2e39bf","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3d2e39bf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.3d2e39bf","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-mBDAxRBnua0v1BtNcRnMQCH/r0xHgOL949u6e9q5SMW67xCt+sa0GzeGT7Y91aHMy6eEn1XYID8IUPv+D/OTEA==","shasum":"f5b7eb4a0efc4edc4934470c31e8b1cafcbed5ee","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.3d2e39bf.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHaXXgQNZWe2ZkBha7U/qBaIMfshNm59rRUALXDF3PVgIhAIPBvlfmpBNtDy6chbomzD4ijRomaMSuzu5i+aFZWkCo"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.3d2e39bf_1522259318864_0.612679449875716"},"_hasShrinkwrap":false},"1.3.0-alpha.f66e87c2":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f66e87c2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f66e87c2","@crave/farmblocks-hoc-input":"^2.1.0-alpha.f66e87c2","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f66e87c2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f66e87c2","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-T/Q9ir47Gn7Dxd5nE+JrbGhVTIsYb4Ak17kJwtmr6+mS0F4Qb+ZBUcsIHKgigf6gTEWgWFfmiyLMFP3PycETxQ==","shasum":"d98a5ba75e3b0d339a16422ef423ee342410a663","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f66e87c2.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFd7AcvWvkbIeT+QmXJo5hOn2qLZKdKN6DwVEpZlOcubAiA17IQCk3s8EeoVWH4myuOuzt6240yyHktO8M0+inpewA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f66e87c2_1522260202381_0.3834426177924837"},"_hasShrinkwrap":false},"1.3.0-alpha.6977ffda":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6977ffda","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6977ffda","@crave/farmblocks-hoc-input":"^2.1.0-alpha.6977ffda","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6977ffda"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6977ffda","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-qUOc+yPCPlBgXSCe2JLscKM3CX4MgUeQ6mtHURVPDPER03u+/AZpl1cGPG7WQuLZGTOibiNMhAOa1H5yXQy8XQ==","shasum":"8913384bfc430821d38fc2933aaf6e91ca628f8f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6977ffda.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIATtQyIBFEsy2uRZBJDhfXgMqI8Zt6guCWJtAG6AwPLFAiAglYzTySid+y4nvyjKfVBS7qA2IJ9Q9md+Our/TyUgJQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6977ffda_1522260808124_0.5287968649820127"},"_hasShrinkwrap":false},"1.3.0-alpha.c235006c":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c235006c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c235006c","@crave/farmblocks-hoc-input":"^2.1.0-alpha.c235006c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c235006c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c235006c","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-b7MlF+kwSCovjLFtfrAgWObHXjT2MnamdgOniR7nQlahjX7LrZKzauN4WucXNdpZya4d4o82IhiTfMAh+EYfSg==","shasum":"99195ed501d151450c613849a8a8f95f393fad96","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c235006c.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD8CN9Fvy/o4dkaejJ9zZJ9fO2NG7COQR2i4sg732+q8wIgW0fWJOnTfP2gm9bPseUh/wyKYiRcn6IHRekz5psQmQY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c235006c_1522261360923_0.6075759742749816"},"_hasShrinkwrap":false},"1.3.0-alpha.5c4d01bb":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.5c4d01bb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5c4d01bb","@crave/farmblocks-hoc-input":"^2.1.0-alpha.5c4d01bb","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5c4d01bb"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.5c4d01bb","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-eb8EKoHq8WBFqYdmQc+Y2u2b3wOOFFqXW2ouQxFBVrUYu513ixii9DxLYh0owZEgFM+iWfF4LVkzWf8dXk7cdg==","shasum":"e702490ed4dc46b1b4ce6e7af91c025f2f3fe101","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.5c4d01bb.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBwP/ZH5lFKvJogc8DDgaRJRchFgma4q1Qqc3SLjRKLCAiAChbT6qmNA69JjhSv+pFW2o/OIbtM9xGeoc0mIJwOOmA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.5c4d01bb_1522269320568_0.984560122873231"},"_hasShrinkwrap":false},"1.3.0-alpha.0ab41057":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0ab41057","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0ab41057","@crave/farmblocks-hoc-input":"^2.1.0-alpha.0ab41057","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0ab41057"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0ab41057","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-aFnxBOgsb+DLfDMpp1iQ+UAcY1pVQaL8Phg8T+ac1reE2L5yKZlccgSrcFF1Hpfe6qiXdGlNATaXzfPSFcogkw==","shasum":"6e7448afc82bbbd380ae9f90a03f1c0db7743bab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0ab41057.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhHcfzAvw9QzBbuwyIqsk0Sx4/huSuxBueBF8xuMAspAIgPo+jxCFENoe0y0gklOm6odr3IP0TdTWVKtnUkrF4iXs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0ab41057_1522272444507_0.08263149719031748"},"_hasShrinkwrap":false},"1.3.0-alpha.af18658d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.af18658d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.af18658d","@crave/farmblocks-hoc-input":"^2.1.0-alpha.af18658d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.af18658d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.af18658d","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-lkGRZYU010ztJJQVY1H6h0ivBOaVi1+dWpFdztZ4UpPix9L7s9w75mnUknvHqB7kjhCKYRZ0hZsnfR+nMxN+fw==","shasum":"3a6f93e5b77eb272a9357b16ce5b270350fe82db","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.af18658d.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMxNp9wO68L5jBDaxLut5iLaPIotB5m10fd91wJKBqawIgdEaQuaFgMbbCZJmnf1Os7oHsjG3EnlZx1T58PDxj+us="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.af18658d_1522323092238_0.5400759664202981"},"_hasShrinkwrap":false},"1.3.0-alpha.65028b83":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.65028b83","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.65028b83","@crave/farmblocks-hoc-input":"^2.1.0-alpha.65028b83","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.65028b83"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.65028b83","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ykRZgVLTASndWUgBx0zojNn1a5jTUOHaJQo+MCYOXQVMSWrRvDMRWudrDf7ZaJAnkffnShanhhqLdkWbortqTg==","shasum":"81aca143baf33ad51ee51057e0cc826aaf8eb51c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.65028b83.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH66RN4+G4XU+DRg6r3Jfb1nSz8kzWJvBDOphlcYU+mQAiBgwOEKl/zDUAX6Nk7fDrlYvCtZC6ri2SXc4u02zsfcwQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.65028b83_1522325789386_0.6679668390621869"},"_hasShrinkwrap":false},"1.3.0-alpha.291252a4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.291252a4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.291252a4","@crave/farmblocks-hoc-input":"^2.1.0-alpha.291252a4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.291252a4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.291252a4","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-f2gKqas9m/gjAzDld+RRl9cgPpaFb3w5H4Z+7tz2GqUEyXJ5WIivjUlmXEksv266ne9oi8wJApqOo/H6oHjMOQ==","shasum":"b68edb16231e573f408391edcb50971433ee7c2b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.291252a4.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDLCnTtTokB5LOGus1cc9ElX8qnO4+W/xlrEbyEyeL5oAiEAnCynkFn+tXD+YzrmKhETKp3KqHg/sfapgbU0aw/MtJo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.291252a4_1522325847436_0.9649282931361471"},"_hasShrinkwrap":false},"1.3.0-alpha.6203a493":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6203a493","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6203a493","@crave/farmblocks-hoc-input":"^2.1.0-alpha.6203a493","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6203a493"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6203a493","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-wxfGVHNQ+3lL3CO3xTwNyOE8iN198oyS5vi00ObAZ2NDM3PW0/zmlH/gTYbqtMHepCgU+Jg76rcJofankKZEzA==","shasum":"1a8b338d5b45f073d9fd6f0b232a2790cb08caf3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6203a493.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAzXCAsDtm4apiZX3VhwVHArznAGfttpj8u+28zaTwwWAiA/amb25c0kffUiztngLXhWN9lfNMHOyT7q5o8AofUAuA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6203a493_1522335376770_0.021146123294089714"},"_hasShrinkwrap":false},"1.3.0-alpha.49d9566a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.49d9566a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.49d9566a","@crave/farmblocks-hoc-input":"^2.1.0-alpha.49d9566a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.49d9566a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.49d9566a","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-0BHO7czKi60bYtdKnmyfcitajevnuIImBaOlsWtnrC87WYKQHYOEIRUiq8zQHFhaacf09t+5zdnTFH8CT3+wuw==","shasum":"7d3ce1fbb5bef3bb3d3c125ac8b00b1bb5450786","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.49d9566a.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+3wSz5s2Bv71bKAOY89wcIdgUTvqW1oImQOZbrT3+fgIhAKK6TtEnC4EgIkRfKy/pHFRfLn3zmcfgphdasBob94gm"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.49d9566a_1522336451483_0.4245048135806868"},"_hasShrinkwrap":false},"1.3.0-alpha.0d6e2bdf":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0d6e2bdf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0d6e2bdf","@crave/farmblocks-hoc-input":"^2.1.0-alpha.0d6e2bdf","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0d6e2bdf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0d6e2bdf","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-NagrkaYgjHvtFlHawtKbY1ohA3a1wtMZ0XnikcrJmWyVyDP8kF99DUfCWuPf3kyUPy6HzBiwdJz8HcjKyfDDFw==","shasum":"5bd352d418678645152e9b5724c6d90df9b0824d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0d6e2bdf.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDD8gLC15/aLhpRQHY/S4KDzU4eQBjyrdqxZBUfTD7JvAIhAMHi836uVUgPgWuDvyPr2mlJg4SgcOWu01tgmnlh5sks"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0d6e2bdf_1522337593137_0.9530937582271919"},"_hasShrinkwrap":false},"1.3.0-alpha.c7e8b8b9":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c7e8b8b9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c7e8b8b9","@crave/farmblocks-hoc-input":"^2.1.0-alpha.c7e8b8b9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c7e8b8b9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c7e8b8b9","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-GGwvqsymD3rB6z7N8a51BFxJj4Tr1j2RmG5NjphY3n+ZJ1sCetS1oTFYEVd05kA8mPSdo88zghI1BvdEklKjdQ==","shasum":"725e8d7093af67643b7b71f4e2bcd54ce047a3dd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c7e8b8b9.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICcFSP0R/3lkMXG0sUlxBVZVLHMOh/Yi4KlgxuO69kfXAiAlg8NvkzUb5QHmHDqjC5zAN5b0OeMExlxinVhD92aE5Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c7e8b8b9_1522347066100_0.553332992526187"},"_hasShrinkwrap":false},"1.3.0-alpha.4be26c61":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.4be26c61","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4be26c61","@crave/farmblocks-hoc-input":"^2.1.0-alpha.4be26c61","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4be26c61"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.4be26c61","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-qUVNEHkxvwkqobAt2WR5fEiSmiV5Kq54qfHtvGcWWIf4yfvdxb4f6vM1J94dLsHY4EEgdcuv9FZjfxwA/nsC4w==","shasum":"9d40260a014c9d8014c21126b8a0116c283c8b32","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.4be26c61.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDE/YFFesLvFwzusfnvrniSLRJfQU3Rqc7X44ocNClZZgIgA2i/4dp7b8HkjwFOTzS0YxR4fl/cKvBQq79PHbxhq60="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.4be26c61_1522349493856_0.4094672026557169"},"_hasShrinkwrap":false},"1.3.0-alpha.04115e62":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.04115e62","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.04115e62","@crave/farmblocks-hoc-input":"^2.1.0-alpha.04115e62","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.04115e62"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.04115e62","_npmVersion":"5.6.0","_nodeVersion":"8.11.0","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-Gl9IBDsZLzEkubENiJbdfWJVPVGf46jojuUy2Y/UhCZPffEQAa5omM6zC6YL5+QeDtZN3jo49E+DqX2oe7LrkQ==","shasum":"634e0481832ce27b3c35919ac7ac198a320fecae","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.04115e62.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH/O9U8BIgZUwG24speeZqigi/KqDnhQWazTQ1JYB2hnAiBTlnEX+fnZVQtjFSsenGIaxO1a5comj+j8UvytvMgH7w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.04115e62_1522349578373_0.08700445528757617"},"_hasShrinkwrap":false},"1.3.0-alpha.17457c59":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.17457c59","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.17457c59","@crave/farmblocks-hoc-input":"^2.1.0-alpha.17457c59","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.17457c59"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.17457c59","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-UnTVUyTwvrf2nTFZwq4iUMWgF+ViPO+t7zw2uZhmLeGvcNbETRmU3aO8DYOiUQokpFNqYkw23PNTGYqhPdBokw==","shasum":"da5d31d74e3f36ba9dbd0727b4dcf0c701d2b5a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.17457c59.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEJhkZA3+w5OFi6XDRfJxAxkC0IvU+pm2w4vRxn1i7aoAiEA6z9Zk8+tG4CHkqHGe8SHvibsgNfRzvXgOCHhfKkyZlc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.17457c59_1522672164897_0.5770968808929478"},"_hasShrinkwrap":false},"1.3.0-alpha.26a5c31a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.26a5c31a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.26a5c31a","@crave/farmblocks-hoc-input":"^2.1.0-alpha.26a5c31a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.26a5c31a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.26a5c31a","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-WS7bpR9GEt1cx24PYUJVzr+bA9QJu10jqvPtYah3xKgBKEFv7P4+dB1Aep1OFooeFvvVcble/uEbtNUHF/NyHg==","shasum":"2822a0a3bce553ea64efd5f4242a62483c6768d0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.26a5c31a.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1qsT96wVw3TxPZw5/3xnMsRHA9wERTj1NC9n68gJ7JgIgaENNa7PedlfVJXkAaA32Fl3aLqKqSwS8GLZt6L+PpnQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.26a5c31a_1522672428457_0.7059846243561514"},"_hasShrinkwrap":false},"1.3.0-alpha.b7a11e94":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b7a11e94","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b7a11e94","@crave/farmblocks-hoc-input":"^2.1.0-alpha.b7a11e94","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b7a11e94"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b7a11e94","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ch3k+OmKQMa4rF7uNKtL2opHP+XXAsAmq15hyVKST9ZeUzTbp9htstqrNuiQIg/51kfALxAatKc1ogwmbWG6GQ==","shasum":"443985295d3d04e6be84c18e6e206505d5118e99","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b7a11e94.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD20cSx7vpJcuk/NmWph+Pj3pWNJVExYX/NLtJiK/ozWgIgTzgT/pxkL9vTyi8+5AMk2QH27xyoDl+WjIgQE8/9x4A="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b7a11e94_1522677733862_0.2396389005630748"},"_hasShrinkwrap":false},"1.3.0-alpha.161df42e":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.161df42e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.161df42e","@crave/farmblocks-hoc-input":"^2.1.0-alpha.161df42e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.161df42e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.161df42e","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-7/7pm9VPaUvIOE+htgeknpRji50ThchcqohrSjUWCpCVYzx0qs/Bbo0W7ckJtKvoQIUIzOS1kIV3eME39xcnrA==","shasum":"21e45715c0aafe91ff31c69648f947362797a093","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.161df42e.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmcYCSCjOJRPYXoUMWE18pUTfNM5BO45WlWHUmN9D93QIgIX8lsmWpbDUWQ5DWPJsSHdWOYEYOWDNfdGOucB3Hg7s="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.161df42e_1522678997705_0.35158270985805107"},"_hasShrinkwrap":false},"1.3.0-alpha.77494df4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.77494df4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.77494df4","@crave/farmblocks-hoc-input":"^2.1.0-alpha.77494df4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.77494df4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.77494df4","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-dyFkR6GunN7XiIJuyN2S83+NwGjcsmapnjpu5v3LsauawzdJbai+ynU/3Ru2RGZy+2vM2lyuXKwccQ/yGiSFfQ==","shasum":"5f86bd8b3d94dad9922d7096bc2a97ad9d324b79","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.77494df4.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGfvKKJ9u0olz5huNsWhvgQy2mga42VqWmfnewXjCIRNAiAjLcbkqQKOH2W7B3O2MgP97WFszU9WcfTjoXrpnHK4bQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.77494df4_1522679161040_0.8778578956365666"},"_hasShrinkwrap":false},"1.3.0-alpha.06fd4877":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.06fd4877","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.06fd4877","@crave/farmblocks-hoc-input":"^2.1.0-alpha.06fd4877","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.06fd4877"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.06fd4877","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-FTek+OqJeZXjPUzad6FMwh1Fkpz/QfOzNCqJN+y7s+7Kx0nc9BuYg4wanyvMqkMnD4GsG9vjzYz62Pb27hxcQA==","shasum":"32ee120b2ccd89b16254707c8b03b564be7ef1c6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.06fd4877.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGA51+/EYWXBnGsQcup2P1SVGf10bA+MSvUNnul76iMmAiACC4CE0x/zHMrZG+F3rL18txmorS5tRskyEwXxXB7PxA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.06fd4877_1522692866701_0.29339807379133864"},"_hasShrinkwrap":false},"1.3.0-alpha.97b7b3f5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.97b7b3f5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.97b7b3f5","@crave/farmblocks-hoc-input":"^2.1.0-alpha.97b7b3f5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.97b7b3f5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.97b7b3f5","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-HfPgE9JVvJCb98qhV92v6i13acQOVjoSndsPlZw0m0CzwPNGpG2nUVtC+Yaefnth2bC5xcj4Xfk0ulJQyNrhTw==","shasum":"237b2acd633c675d567c15c6a71d2685287975fc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.97b7b3f5.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF10mId+BoGiOdDZrBwWDQtrt9FF0IjG33RiuAdB3kOGAiEA7sbSkiB1inGUBYmVSxQr2ee4Lqn66N616vhXi9M2cEU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.97b7b3f5_1522692971262_0.22334618411348028"},"_hasShrinkwrap":false},"1.3.0-alpha.6e1775ed":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6e1775ed","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6e1775ed","@crave/farmblocks-hoc-input":"^2.1.0-alpha.6e1775ed","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6e1775ed"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6e1775ed","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ZqvNDVUgpQ4cT2IIMwIE14iO8PAg11vWv7k6CRwjbGwTPxGxUCSrAZdBUNwzZhcM5NE7ztbBaAEHvLAvUaCBxw==","shasum":"603ea435d0732837262564d775b00488c5b35b52","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6e1775ed.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0df2gJtQV+XMsU5GecKMFe5AwRB1y1P5z6h21W4jLtAIgdQdPdoEzivGEzjvxv0prENU2WvP4XXLdfVN7/LuDBs4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6e1775ed_1522694841652_0.42405734954150476"},"_hasShrinkwrap":false},"1.3.0-alpha.9c3e64ef":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9c3e64ef","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9c3e64ef","@crave/farmblocks-hoc-input":"^2.1.0-alpha.9c3e64ef","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9c3e64ef"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9c3e64ef","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-k9474mvuduv6A77lQ14FH201j569xSirUpCIb2MQxXovprXadRzcbIlau9j/UCEvDiWji8CNT2f8cfh04BbyAw==","shasum":"6f1860cc7b9fe8c69040683a857808f69fa3aa82","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9c3e64ef.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDyGXHYbUZTbEhVGIugTcAgUBU9vEphKKy0jKH7iWV+SAiEAljFa0T7G0P9GeD7XOz7peyLrgaSPXqVTMwsM6mUhzyU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9c3e64ef_1522855407943_0.7329342420056173"},"_hasShrinkwrap":false},"1.2.2":{"name":"@crave/farmblocks-input-text","version":"1.2.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.0","@crave/farmblocks-hoc-input":"^2.0.2","@crave/farmblocks-hoc-validation-messages":"^0.2.1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.2","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-+BgJsK8UREEJfnNSeiWKLVN3BytZnw5hBY6h1HfyQ51irSS3C9zVh3h+PhYRjIEmWnnSsV8yyP4JGnlDXbGMPw==","shasum":"5dad9ac8aba1789e1382758384b3fea32d58b496","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.2.tgz","fileCount":9,"unpackedSize":23088,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfJmZ634feZ2gFcA2O+8UKwfLciieF6pWlI7M7b5UhDAIhAKtXj1ZbkWKW2w6H7E8ixZbvcBo7ff4o6de2X6PfNvji"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.2_1522867392937_0.6312535083973019"},"_hasShrinkwrap":false},"1.3.0-alpha.90450a0d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.90450a0d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.90450a0d","@crave/farmblocks-hoc-input":"^2.1.0-alpha.90450a0d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.90450a0d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.90450a0d","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-m4JqDWcmkkXKzEoS3F5rZkzGWla/lJDete/3VHBwQo/YU7/OqGGlevZy+k+vl0wm4ejSfqSrNf5rJ4+d4uZkzg==","shasum":"bc419ee4db74219cb45f88e9374f878c8681f26f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.90450a0d.tgz","fileCount":9,"unpackedSize":23432,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF0Q9Y8o4P2I2Cjwx45L82danMMEUu1xW4UU8V/BDR3rAiEAudOP4ztIXzE3iLB2kLWrdx105DXSHDEvK8n/ba5IuGU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.90450a0d_1522868068652_0.5002637665505167"},"_hasShrinkwrap":false},"1.3.0-alpha.09cba65f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.09cba65f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.09cba65f","@crave/farmblocks-hoc-input":"^2.1.0-alpha.09cba65f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.09cba65f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.09cba65f","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-1PSBvvwWTZ6JTwyfK5wfk9ALJ5fRIganZEed+TPEqVndcgEC9YtB5P+4GPT9Q/I4pNYDIDIj063rAW0g9E+byw==","shasum":"aef42d124d5cd0904e3e44ae08547f22d1aa2fcf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.09cba65f.tgz","fileCount":9,"unpackedSize":23432,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGXqVyfaba5TuQ3HVDcLN63tVkVboHxvl5MMrX5U9BPQAiBGGw56jkjqy37EYFftnqcOPecxr75n2/BjykU6E4Z+Mw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.09cba65f_1522952004696_0.4980207910349794"},"_hasShrinkwrap":false},"1.2.3":{"name":"@crave/farmblocks-input-text","version":"1.2.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.3","@crave/farmblocks-hoc-input":"^2.0.3","@crave/farmblocks-hoc-validation-messages":"^0.2.1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.3","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-2n+SHb+n+Tr0ygcSS7HOV+HFWU7A2Sg0QnNq1WqvKUNkqh2cfEJf+UAyIxvA8DE4Lwf5Qkb9pyGEa37XZsJxjA==","shasum":"c94bf1a2107c2c9c4083eea18c4b32db6697d36e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.3.tgz","fileCount":9,"unpackedSize":23328,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBD/T+pvJL9ef7c/VdcftU/GrdLX9EeGjV29fCCk4IYSAiBwgr5vx7wz7CuTDS+WjwxQGYpDajW4PEo1+xIUAoy35g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.3_1522956929019_0.6104528044872162"},"_hasShrinkwrap":false},"1.3.0-alpha.4f10e4fa":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.4f10e4fa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4f10e4fa","@crave/farmblocks-hoc-input":"^2.1.0-alpha.4f10e4fa","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4f10e4fa"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.4f10e4fa","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-JxgIJPKKHvcFop121dRX0yK4VEH6qWy7pu75ecQKf/w2nTo6MQGbllbWJGOjQP8SuoomDnblmbohM8O2ZT9ebg==","shasum":"4196a6c510304e92547feea186261f1b187b8d0e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.4f10e4fa.tgz","fileCount":9,"unpackedSize":23672,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDgZWLIt2ugj2MaU8tWESs5ysiGpTn4SUiuTfHvRyjDSAIhAKhKlOkU7Xx9r7Vs4KISQsXzH+VJGxbiqxcttbE8xKlF"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.4f10e4fa_1523038586956_0.5160115483656946"},"_hasShrinkwrap":false},"1.3.0-alpha.8eb423f8":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8eb423f8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8eb423f8","@crave/farmblocks-hoc-input":"^2.1.0-alpha.8eb423f8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8eb423f8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8eb423f8","dist":{"shasum":"bf138cef0cec40b9a4c5b1fdd2acaff39a97911c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8eb423f8.tgz","fileCount":13,"unpackedSize":23672,"integrity":"sha512-Hhwaq3pK3hZM/vixNREJikwyS9BKejKx8Z4QfnCP+dcKs8EHW/PPeA0aeEBHKEpCO63lIkfvr0TqDPulWpZAWg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmtBNNdsW7LM6TYVI6HjC0Ct2G9tGRAv99YTXaBVediQIgUkOmRa3Fg5ggut/rNIGp13EMWRVsuAO0VycNVgcbk9A="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8eb423f8_1523204036278_0.2749367358897452"},"_hasShrinkwrap":false},"1.3.0-alpha.f381ad86":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f381ad86","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f381ad86","@crave/farmblocks-hoc-input":"^2.1.0-alpha.f381ad86","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f381ad86"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f381ad86","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-tABOl6aiMNcL/Tpz6bH7iRTXW9VCy1+sLADqTn03JpiBUzpiXuFZhi19bI1xQjfoKgwz2tRLOFkJwxP3xYZgTg==","shasum":"012bd230e631668e988483ef921533acfe1eb9b4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f381ad86.tgz","fileCount":9,"unpackedSize":23672,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9xBC4UhqglAmJx1LKlnoobn0/jHRWm13H1quQX3aw9AIhAKv91mzgqCOfWO4dafY0xkJulZ9pegT6oGWWm9jD7tB2"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f381ad86_1523284707961_0.5711489878784748"},"_hasShrinkwrap":false},"1.3.0-alpha.e1faa468":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e1faa468","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e1faa468","@crave/farmblocks-hoc-input":"^2.1.0-alpha.e1faa468","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e1faa468"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e1faa468","dist":{"shasum":"ef295fcb003026c1d48727c4309a871ed6c81d6e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e1faa468.tgz","fileCount":13,"unpackedSize":23672,"integrity":"sha512-Jtx/tRriLSdNBp5FIonZCpfZrmA8+CJDSHNzA06EVrj+FI/6jKPfbynP4BApJ+O6aLGhxni6W2sEOY/Vj0YWdw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBpzusKakBRQY9i8uXbKmVQmA8vTGrtBOmBlFYjrxGPMAiEApHGsadHwV57tyFX0p9vNwrmxrq+Al4kMFRnIykcRJMg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e1faa468_1523311491173_0.46393401862387496"},"_hasShrinkwrap":false},"1.3.0-alpha.d21f2021":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d21f2021","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d21f2021","@crave/farmblocks-hoc-input":"^2.1.0-alpha.d21f2021","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d21f2021"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d21f2021","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-ijQGmllQ881ojVLcW7pRzFC8NojKTj0nlnDPP0ywercVAW8O5RTPYuZ0pj91imhXZie0kIKAhXTxJTmh3gYArg==","shasum":"cd539f6649ba981da2aef290ca02feef9f6297ca","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d21f2021.tgz","fileCount":9,"unpackedSize":23192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDBfuSvvFFkQmtFaFI0NwHtB1hE6K1NlMee4drsRP47wIgN5Y8ckd7evpOdZkU2jtaS0VUlqfieoKMCBxxyruwlUw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d21f2021_1523367557481_0.732418598379847"},"_hasShrinkwrap":false},"1.3.0-alpha.30428b8b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.30428b8b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.30428b8b","@crave/farmblocks-hoc-input":"^2.1.0-alpha.30428b8b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.30428b8b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@1.3.0-alpha.30428b8b","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-93nXtfFYL/PRYaHufTjRY3azKvwtPU6LLcKZqS5gggj+e6Xec4TKoZUPc4FxXDb3vC8G6R1GfBKwp+bnQMCIjQ==","shasum":"2e4c3803b2a85c5e11ee51b0a4fc023f2c3d500c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.30428b8b.tgz","fileCount":9,"unpackedSize":23672,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHPKKOdnhMuFa52yM+78AvyC3wkTjTIPJxqvk/DFHu3QIgY+iPZJ9v9W9tAkcPblEbwS61ZMoaaeJPoGmUBcV44jQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.30428b8b_1523382467327_0.589702183180397"},"_hasShrinkwrap":false},"1.2.4":{"name":"@crave/farmblocks-input-text","version":"1.2.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^2.2.4"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.4","@crave/farmblocks-hoc-input":"^2.0.4","@crave/farmblocks-hoc-validation-messages":"^0.2.1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@1.2.4","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"dist":{"integrity":"sha512-hVSM7FcYbj3vWaDT8klc0lA8H6Ir/vA0H/hjP328jx87gfYnf+gu+dpNJOl7anZUYVZNJrvj3ktliVP1Emxung==","shasum":"30220bf6e33b413cfd8bfc6d331390c8110ab918","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.4.tgz","fileCount":9,"unpackedSize":23568,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDs7+1ycJtjycIlyVyO9JnELM+SvgA6OVS0qs3dJ9esZAIgJ4hcraJ/FZ999nrKXeOfBDavVKIILl17Ee9mhRdnkHo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.4_1523384162790_0.582465370829718"},"_hasShrinkwrap":false},"1.3.0-alpha.1462eea5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1462eea5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1462eea5","@crave/farmblocks-hoc-input":"^2.1.0-alpha.1462eea5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1462eea5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1462eea5","dist":{"shasum":"6db6bdef4da79e4d0ba2e383784b7cdc49eca0b5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1462eea5.tgz","fileCount":13,"unpackedSize":23912,"integrity":"sha512-KKb3vAdwZHxeuTF8SwEsS6N8Fnmc4u7h1t4CGhQkp2yiHZ945PYZPH94t6sM3VkvijZBtt3WoemxBpWdAIm1Og==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDnJlbZhAj5/zQY2PRGanxR6abZYyt77xUDtrK2GO4O0AiArCfjDZbAFVoEpmMBrM2zjeXqcMvrd6WtmYugPcYQBOw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1462eea5_1523392825816_0.1286973923386956"},"_hasShrinkwrap":false},"1.2.5":{"name":"@crave/farmblocks-input-text","version":"1.2.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.0.5","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.5","dist":{"shasum":"bfadeceba6c323f8e1db4c892b13330c9a45fdd5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.5.tgz","fileCount":13,"unpackedSize":23808,"integrity":"sha512-pNnU9cBRRDfk+CgahQHZMJ4sHmqz9VZXU+YeOkrHhS/6B0lN42GLBMUfyHHMSO6H03dvfbMhGMzrjfx7Fc6b0A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGOH8R4yH13RqionZ8mk9vk5Zk/IFLekrmpTgGOz1PYCAiEA+Xf2VvHCPr9ymAYDitVMLPxRxZYbYwvQapsLK/kxcMs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.5_1523448222807_0.4933514883350332"},"_hasShrinkwrap":false},"1.3.0-alpha.be92736d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.be92736d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.be92736d","@crave/farmblocks-hoc-input":"^2.1.0-alpha.be92736d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.be92736d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.be92736d","dist":{"shasum":"595e4f71ac0ffb5e73541285b563bdd956e5106d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.be92736d.tgz","fileCount":13,"unpackedSize":24152,"integrity":"sha512-7owjuyGbg8PjxhHmUl/qjKTzkHg5vojuw4ZppbZbQ1O13XZ0PparPksnF8pgVA4pQfK95yTDxoxSzr0Np3e7jA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDALSvM5ddqN49VRdpGbZhckNxFUSmpgn5JLvGLvRweGgIhAMRYtEGNCC58BlWDFLNgO955WGe+KH6I+eGSQfSUshNR"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.be92736d_1523474858282_0.1268914329906683"},"_hasShrinkwrap":false},"1.3.0-alpha.c741e1d1":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c741e1d1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c741e1d1","@crave/farmblocks-hoc-input":"^2.1.0-alpha.c741e1d1","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c741e1d1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c741e1d1","dist":{"shasum":"aa32dccd2beb4b186a3afd77020b5a76f9888e4a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c741e1d1.tgz","fileCount":13,"unpackedSize":24152,"integrity":"sha512-2BmF8Oxhc7msCyXYHkA0R2RFCdql6fGdNoxTBWGALYhNoFRr1nIfE3MehSfQeO9y1nFqKxF32IJZEgnmbWsqVw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDr6lwWnpYWJHcC34W/iU9Y7MqHV20Z4hGDHVhSu2IX7AIhAMqsH/zMno0xnjAE8foOtMJv9HGA5nxNU774sNCryC5A"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c741e1d1_1523536504767_0.24620977247428044"},"_hasShrinkwrap":false},"1.3.0-alpha.6ceacecc":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6ceacecc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6ceacecc","@crave/farmblocks-hoc-input":"^2.1.0-alpha.6ceacecc","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6ceacecc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6ceacecc","dist":{"shasum":"dd1eba69526e5ff8eca470fd3f8c6193faab17ba","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6ceacecc.tgz","fileCount":13,"unpackedSize":24152,"integrity":"sha512-+7hME6K0ekIlsnzYjFsFgiCaG25M8lZCI6hAlKgkwWnN3RAz7vejzzl9ZaGUGJa4TjYJJLtN63aM2hWnmVk45A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE2phrKSBavuNlwjU+l+t86ttIVq7cw04EO8Ty8ILTHSAiBCgFaoQk89HxQhS2Lx3PaODYgNRm7AtPvbC32mMwJHKA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6ceacecc_1523543790016_0.6098980741519389"},"_hasShrinkwrap":false},"1.3.0-alpha.0e264232":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0e264232","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0e264232","@crave/farmblocks-hoc-input":"^2.1.0-alpha.0e264232","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0e264232"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0e264232","dist":{"shasum":"057942ed19d25805bd4a3090de4aacbeca72b0d5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0e264232.tgz","fileCount":13,"unpackedSize":24152,"integrity":"sha512-dicxvzAKyBBSR7kXmuW4Q0MA/Xq8nROWcfbZaNwpuaqaa6q0xT2hRzoiXSrl4mkERJh39JwpreRdZ3yWbymcvA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDoRscHQH3BIDFRdwrEDmdBgdAK/a+Meu2SMipKwJTO1wIhANvvMIc2OPxPcpJlqIHyhcFlbW+/p9G2AJdk2pXeNbeD"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0e264232_1523545701908_0.1200808434405396"},"_hasShrinkwrap":false},"1.3.0-alpha.7bfb746f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.7bfb746f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7bfb746f","@crave/farmblocks-hoc-input":"^2.1.0-alpha.7bfb746f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7bfb746f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.7bfb746f","dist":{"shasum":"a9a1982af0d7ec6c95709f336d33aa327cd977f0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.7bfb746f.tgz","fileCount":13,"unpackedSize":24152,"integrity":"sha512-Z4WYdrKMzvhA3MWz+xKJxtKRXRvyYl1N9E8ACePkMoIFTSTrx5PPVJvDrxM6bD4c8DWs4NtTodpp4Gn8D9VSqw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEpV1drcipPJnUUEsR+r81kd84PZ9lm1y/c3vCgBzfAnAiAr2xFnEMOjCzp5SwVXmLiVPIMhDjzUulwhCgm/K/jf/g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.7bfb746f_1523550906646_0.2780897019750481"},"_hasShrinkwrap":false},"1.3.0-alpha.2c2e80e4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.2c2e80e4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2c2e80e4","@crave/farmblocks-hoc-input":"^2.1.0-alpha.2c2e80e4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.2c2e80e4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.2c2e80e4","dist":{"shasum":"b609bced8a43c1ae6bab0ecc1f7b151f838b8a78","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.2c2e80e4.tgz","fileCount":13,"unpackedSize":24152,"integrity":"sha512-RREJSXCzBpuCi+DK71x/d1hYjMEE/y0ttL4NUmIdEUCwo2fRLapGbrGckW02DPgx1moPCV7ZJFHcHgVzqNRayw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAMwdv6d2HjdPbKNZgietgVjHtd8eVpBrOhWvyFDl9kHAiEAiyTghJNlQkt//pd0ENBpNKeFLFcwPFZHpkGCbL5kuCc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.2c2e80e4_1523553538355_0.14973459638297837"},"_hasShrinkwrap":false},"1.3.0-alpha.8c7247a1":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8c7247a1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8c7247a1","@crave/farmblocks-hoc-input":"^2.1.0-alpha.8c7247a1","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8c7247a1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8c7247a1","dist":{"shasum":"32310b8dbd01634813adddc1f8851b9418df91eb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8c7247a1.tgz","fileCount":13,"unpackedSize":24152,"integrity":"sha512-/z5Nz3fvdKtNIPWAi76Pf0krgzDdMyVX2vM/2UpIEItyTPdqNQbajlj8yTy5PMUIfSSZ5hOTr/Rh3WiLOIWEwA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDy3uM4OHKdPYudUyrDXZhuZjB4BHh1hF33fZOeeIcsZQIhAKozvbuIQoiBbIzRnTPLhcfOUhBu42F8A+YjctajUV8K"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8c7247a1_1523553594207_0.5743400572727011"},"_hasShrinkwrap":false},"1.2.6":{"name":"@crave/farmblocks-input-text","version":"1.2.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.1.0","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.6","dist":{"shasum":"b6e3f7cba943b35cbb939c9a7596867774980874","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.6.tgz","fileCount":13,"unpackedSize":24048,"integrity":"sha512-b2c4JGraP+pPxQEBmscfuKae8uMnUIRtsypwJ+d4oHfol4l5WeYraCkl+hy3eRjRjRkrIAOU4eTl6XeRtaz3dw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAJZQoPbvQlQd5mgrCvWLyA2pUYTceSQQwCnQNx+/Tg+AiB6RdF2SveO2Ib2twYQiA5O7jxbu+5fk2aBmy4hzvOCXw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.6_1523556272670_0.6929692607635343"},"_hasShrinkwrap":false},"1.3.0-alpha.78e42623":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.78e42623","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.78e42623","@crave/farmblocks-hoc-input":"^2.2.0-alpha.78e42623","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.78e42623"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.78e42623","dist":{"shasum":"68f57b6b978cbbba176d57c665f4a6624208d5f1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.78e42623.tgz","fileCount":13,"unpackedSize":24392,"integrity":"sha512-1MpfGPUIMWRpEmODzHN0ajZxttkrQHsNiitcZUq3ZHtomz5Cx69OGoNk+nU2qwslCneeXkDG1NxDyYenTqeD5A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB4PTl6a4fHytMrv2PG6/7aVjAIy3JJMgVXgy7MEyu3pAiEA3JVTm9+CU4aO9+OQWonUFlvqjI5qyzb6ErcFNKqdXBA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.78e42623_1523560780186_0.7302783500599586"},"_hasShrinkwrap":false},"1.3.0-alpha.567db8b1":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.567db8b1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.567db8b1","@crave/farmblocks-hoc-input":"^2.1.0-alpha.567db8b1","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.567db8b1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.567db8b1","dist":{"shasum":"d4086cc4b9a895b44beee2f32fe049e01e22cfd9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.567db8b1.tgz","fileCount":13,"unpackedSize":24236,"integrity":"sha512-C6QFS1Ibw1CWn/0oFNKPkr4ju7tvUz+tzdhMqXX0NfTcm1oKr4urnNIol6/dPMCvWYexqUhq/ONqjhUCa7yYhw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFALmuyMmTuXtN4uljdWiZCx9jmBP3Xsjz932YDWvZDPAiEAm8PoaAXgQBqsGJdKoa8UXC1uEPCSTJOGuKIbIoYx1mk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.567db8b1_1523566069104_0.06960272814485147"},"_hasShrinkwrap":false},"1.3.0-alpha.0f8988ee":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0f8988ee","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0f8988ee","@crave/farmblocks-hoc-input":"^2.2.0-alpha.0f8988ee","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0f8988ee"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0f8988ee","dist":{"shasum":"53d1a2a6389671360575d28c4b54026a45bf5a0c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0f8988ee.tgz","fileCount":13,"unpackedSize":24476,"integrity":"sha512-6Wmivre0Vc8U0rPH7gIISBnAcJMrinQi6e9iKorohlRpp+EiVsmX57LcQDJcolDd2j4Kt+DMHb5KGq5gN43xBQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCP+Lz4SqwQthTgdcF1LFOS8x+JBkiSwWOVMwBJzDYpLwIhAJH8WWRoZhladww5CNFSRmMUfZqL27pAPABuCrv/wKIs"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0f8988ee_1523567371132_0.039492562165631906"},"_hasShrinkwrap":false},"1.3.0-alpha.c1e5c084":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c1e5c084","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c1e5c084","@crave/farmblocks-hoc-input":"^2.2.0-alpha.c1e5c084","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c1e5c084"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c1e5c084","dist":{"shasum":"37e7914ea695593568a809781e6549eafe4f49c8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c1e5c084.tgz","fileCount":13,"unpackedSize":24392,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa1fOZCRA9TVsSAnZWagAA+yQP/2kg6vRcxL5QHAEVISuO\nn05a53SrXAR7GldZyUiyV/nGUAj+d7IOxFanFEgyd4AwzVCMpLO9Jbzgt01B\nm5oT3WAxLQp4WC8oo3AXZoqItSK4+BZZGYFNw2PPAjyyIKaiSqvturrZ6q0D\nPeNM2g3/R4SnAE09H18KCa9TTL0TlZL7HLZAL5WJT/sMKXpGZJrFBmjzB/rv\ndJ/r6CaarQvyR7rYiK2OkhW9pA2bj2aTXcti934ywlv1thzRKOMX1dLsLT+6\nx60VdZ/Q7HwiXP6V1tE0k0BdK10hYUTFayCch/VqK5gLdfiUOyw/1WIhMj3l\n0zXL9uHMSzAzK2cmWH2Vcd+CMlaMS++smXmxfOjMo37WrfRUg9pxBuzvJA17\n285yhD4AP6iQWRq5AP0oc9zl98Gmti8QiqZwSl8bXk3oWfJXUVackot58UNy\nfAnRBCELsXiBKIviSmUMQJKagmpsMbVfsD5fV7nKtP8EE3TaE0E6A0AolOVX\nEsDxYxh0JfcfkIK0p0PgwHoo27m6TrTmVg+623b9wRxMIzgMOvEq6Nq0SqZg\nD+hsjvHDfh0pkStwOQoHmH58u8WL1yxH+OrBvustR9NGD5/a+ca6jluOVfKD\nbULgzYnNVPTAnbvVfLErbV19g8ZZ6F+4fA+4u6NKOQIDRw0QWDQzTzFEO35Y\n7873\r\n=G0sD\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-1zYG++MrGXTfNHUTK1qzzgM920Xfa+0jWOARoMALoEQQqI2uD6GWOIejhWS/0Nvdqm5RpMxlLQ2XOaOoN2YkMg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEwqpahcPawoy/Q+RBWL6gDAvoJ/79Ej51ImAp7GYJQ8AiA5B5RKzr0ceLha9X/bvZZTYrNqn8L6b1WQql3IscSc5g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c1e5c084_1523970969069_0.07718255351383063"},"_hasShrinkwrap":false},"1.2.7":{"name":"@crave/farmblocks-input-text","version":"1.2.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.1.1","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.7","dist":{"shasum":"834a68a4185afbf5d60f08965698b6f59a2809d8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.7.tgz","fileCount":13,"unpackedSize":24288,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa1frrCRA9TVsSAnZWagAAf3AP/3QOMSXjBAZsAJnOTktW\nk2YFVfwnWVwJcALw77wm+ppJYCYZSzTsWZdzPJvelQCX0rS7z/nAmog3N3V+\nxCQIijk5a13QljKN495W96p/xutS/CVLBGc2yosWxAfURir/6ShjhW0u+A+w\nq4KauxMCSQOK38ISzt5CdgfKjIl7FQVRRkGAOJ/MZdT4WbbdaGcP5WzjCaim\nd0VgbzYou4Djp+Xf0l/gMQbf21UdBX0SJK5hT/CSM/3/+YEdgeMUfz9YSU3O\nE39bjr93Z/gJ6L5ykVT7Mhpb+ZWhplbCFaFU7VfU5KM6WkwJWoI5ze8ZNaXC\nKFWZzx7u3aqW4nJz9yqHsbq/hge4W1FsLRwRpNcfNqO7bXj5kZmnLxBWR4Yg\n8MFVlBxkUREAEP946Dd/UZvvH6JL0RRHXn2DnyChX5QL5EwHUqnu1Ysenpdq\nfq/KuUDABlx+PwQ7X3GOoUXJ5Z+IKse7OzW9KGNdVBIE/VfnHd7Yp8tS8x9t\nT+iYVKK/SZtGcUL17hYgwEdeqYuI7oh70hKFVjfzGdP6s/fqf6NGnSSlHrtZ\nhV3wvCQ0jN02CdZ/A2jViHNAZezWPLbe6dRCNEq7D6K1XBHUNLC9Pr+jrU4y\nEQTBvRbPV2lixQNAHZPmB1eoxs/yhT78kSPD0F82eal/JEIGFqslktyL4bf8\necUD\r\n=gCxe\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-Ql+qgm3Y5OKHAlEgPQjfho3Oz14Ee5Sy2P+HEP96vJ0e699v4RWqEYapKHzlPxEbkyh753wECxZc88eVv50IRg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC4VV8+lacmrFR/91h3W2M6DLcy78EFVNMR443Oir7QmAIgaomrp6w3PdX1dgjHdjjZREiUT1o/aJZeVhW5rGl7x+I="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.7_1523972842883_0.7563211730890491"},"_hasShrinkwrap":false},"1.3.0-alpha.c992534f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c992534f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c992534f","@crave/farmblocks-hoc-input":"^2.2.0-alpha.c992534f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c992534f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c992534f","dist":{"shasum":"87e757f142a6a1d443ba52c53642a1291f0a2f28","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c992534f.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa2G9VCRA9TVsSAnZWagAAxZ0P/i1RUGK7FD7tDxfHk/s3\n0MKpUX9tXTds0pgJX5/3lQqYCVPxnBgKUcWmql7d/JPJjZ8onmbuO0GpNszt\nvb+a+pVGkvyKKOvK+Ym7zZlmdO0RY3zD2odYcykhIF1q/djOMfwJlX5ig66s\ni6LIrMozxkg8QpmviRt1ESzQloh6vQHNW9SXZwQTOmDdohh/s9YnR8cu90p5\nbr6Ijfj77G59VBnUVprr8u2IeiPHqBKLlmyhcvsziea1Ls7WcYqUdTLpyRp5\nh7RqCYBA0B7QFQ2qRCZ3yyyjaXuqJqr3xMzc87z7kwihfL5Z/hz8e7InF1rz\nTlLDL9YHrtU4EzxzcgPW0v6wRj0QJYOnmV3hdY93Cgf68s1XO3e9IOgP964Q\naC/JbgxC0JVpmR1VEqhGnaiQsDgsX/bDtNeZF1sovIMg0tRalRLYOQlvrz7T\nXJmMNuBmXLgaCjk0nqVr7XB9WzKzSDr+px8un1raC0E74J9P9VCbIfKDm6kT\nh4AAmZrdgZaot6/wpPrJpfKq55pjE00AyFny5E7ydGJ8dwfjIiINCx8oII1Q\n4TniLEfnLm7fqCaYVb6scA3lyAbOeK7DMmQeYjQpKYrujYBR2GcWJHE2NuUH\nztoyUkaVy3a6PSPPCKAA8SNS1OVH88bNGlrRqhWSDrJRt6pZhshKIZ+0LsM9\nO4EG\r\n=fDIw\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-iyKODlwRYWPv+M3fjbMhLTBki17IxrP9FlsLyUgSTZ3YIAobOk68pfTxVg3AqBctuRnfRDbpv2rY1Rt7bA+Nmg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICE8Cx2ZHJ0oBGzu4qpZj+RW+Il3QFlE9ovh0xstUB8PAiB9RV7FwGzSVDp8F6IHAk0ict7CWCx7cmWFpb5QeD6qlw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c992534f_1524133717126_0.5493429472895608"},"_hasShrinkwrap":false},"1.3.0-alpha.8cf38478":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8cf38478","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8cf38478","@crave/farmblocks-hoc-input":"^2.2.0-alpha.8cf38478","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8cf38478"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8cf38478","dist":{"shasum":"fcf4ca1822dddf4ab51e12396f4fe4cda7a6a169","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8cf38478.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa2G/YCRA9TVsSAnZWagAAIwgP/i8wxXlaAvhaiW2BQQk0\n17nHY1AMlSDzt7mpCD1jz2t9fSYANRWqB89dQZXKC5eYWJqMrgj0Lbf84Irf\n/pGxmN9UT/vPsoUcDbUld14AA+oSuCOWZKR6Vf2AIeSfirDuyNEOvQ33pT3a\n0OygBA6WD6sXCDoTgNMyg2BTUZ+fo0GMg+A2qYVCgnDpW9phziTj7SF0GfCm\nTwly6jW9oQ3bVHc0nQAmU7CfFLMmwT1e6Z88yyzsAq5EejgFjvtC+aJvBBKj\nKs079R7pbYC+Gl6B9IdZ/SpSSDU1BM4Z8Zi7vowyu9VkRAG2LD29MQPVxwyO\nHn1T1kKET84nDA+6fLYoAvArCIHtqL3Ib1sOv7Aj8ZbBnDgfe3eFc3+kSVQQ\nbJXDMeotetQGJCOLbxWdvjw7Ommyn0HgeegSNrXWiM+sWTAdDilBRx0xT5g3\nMrE0pXWtemVrf/S4Xh4wmkJdzxNi+YyQY+3NDyeaBmCMm/7w9+H39u++KFku\nb7oEVfXXG4xUuz5qTJ2uVDff6jsFBxIEKEYYOaBPMCyJWpNzBCsyL/lMojyp\nVEFz6ZlswCE/LW7IyBlPkiG5ZUBsmP6cocYsG/irQQPK08ib/rxOdfHY1ixS\nU6tFRHoul6irDA0xZcTZzBmSNBAPPqHY3yp58L8yIaKsLoX6vqltVcipR6GJ\njBKZ\r\n=O6Vm\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-jXa91hQdolf9rdUM5Wbo2ru0lB8GZ08IKMiwEInLLAx7GN27nsrNV9dEND41evr0r7aZ5V/HXgeool1cNARxUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtYFHueBta/yK/SmQFqpWFKl2Ls8yYse/NNGQ8NfsMFwIgDZliwdVOvbcIjVZcqtxShkrOmSt3aDvl+9gsgThokH4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8cf38478_1524133848117_0.5231471021208132"},"_hasShrinkwrap":false},"1.3.0-alpha.0129661a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0129661a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0129661a","@crave/farmblocks-hoc-input":"^2.2.0-alpha.0129661a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0129661a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0129661a","dist":{"shasum":"8179e5b0ff12dc00ad9df43da921f021e9ddfe0e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0129661a.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4ekFCRA9TVsSAnZWagAADWUP/iOrMWMo4Azf39/OVJ0L\niX2OR6lxo8dlrfvA8xIXwDoGHae0/pNuNmsZsW8AtYX7BchLh9ivNOCglzvS\na7inyiR0o2EydScKQMPs957oIedYGotI8x2IIUQb7onox5S7WztEhfO3gfVs\n4S6etjOx1zuF6KpwIk4K3sRWkCS1Z2UiKyePJtkyJmhmscmnSbZtkhpXl8Tn\nh35mmNiCSl5VcAi1NdTLg3L8DFIA1XeY0w6dkZasWuXDOOEL+y4OARa5eMpu\nl9m6bFR9PjNA8mvZU851q/wIzPnxlAmw+RpYOenI/WebuDUWuPR4zGVHL9WN\ni8CbOAuHaDW8UaJ+XGq83YNEVAEWsvlAHmeoIeugFeI+RamBDFNIDcSmjeQ2\nvU/eZqFVCmJL+j18X1/aFY9NHH8rsTRJOF93gqpr8C6GmiyVXVIu+tCNvq8h\n3I3bD1smDtO1yFyAPOJNvsQT+sauAIloL7WQ7y2q3ppCWtYJ3ORgyTOEWoiZ\n4Q9yOV/Zyuf3IO457ie48ZJAuv9mouh0cvWOr1+RHGSj2fph+cMKtCnogGAp\n0pfy/CZxI1i6RqVgqMEpuWSCkHrYgSLRBW9dHAHm26upHdIC4KbeFUsviGtA\nOZr7zDT7Nsx31YKSKOVFxkR3EV6dFq3WUigBx3x9H6rhNRRRC1wW1Nf00ubW\nG6qV\r\n=AQz5\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-LDe9ThfAozVvlQrlVoMJchHw8oInMtAcQm9SkoHBu18uAVSx4dGGIiwQ+d3f9ISaOfrATfbQjXYTOB1b1KMV8g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIASvmythN4dDOufyVXzuBXxlhd6R8lTE2OvuJD/iHq0hAiBdb7X+B4mrS+Uipkb1LvLzjpgUWQexoK8khAfAXXVFXw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0129661a_1524754692936_0.41233241071637194"},"_hasShrinkwrap":false},"1.3.0-alpha.d78965e7":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d78965e7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d78965e7","@crave/farmblocks-hoc-input":"^2.2.0-alpha.d78965e7","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d78965e7"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d78965e7","dist":{"shasum":"44ea37fd0f48ace01f7503ebc2b6a2d87ef41f36","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d78965e7.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa624uCRA9TVsSAnZWagAAnogP/0+ZYC1CxjuPdS9fmumy\nlBXsjEKTRescdaolbR8XbXPac6aHYJmu8O5nTjJRq4qpX4ym0aQmU5Lz1C9F\ntZmbORjoBHBskaaad3yAfjy43GnIb+9oGp+hS3AcNbmKZN+XdDYem/uTAVF3\nGVdUDdxQYpfKs6tpU1aXcOaaAf+Vz9W7GMvJhsu++jPnhn87OiGirkBi/Sdj\nqDI4YZKxmC0UDvzq7AYTNr96Y55GO2P1ERmz/GG/ZcJWpIprMLDFzeherLNp\nKjH5kh2G4I9d0WitzMTuRJ66/vLeQN26yZy+or12nFtFDKDADtMFDs752HpN\nZiqnzI2kCJI3O5Xg5Oa31AwxWoS6siHpEEH9a9irO2yW7ffDhYxUdn9MvKlq\nMM+TBwuCu8owPPegFJOes/92kTo7mId5+xK3nSb5n7dDz7JXnO/6AZnhZYVe\n7I1KQIiPeDC0qz4Y1hA/jw5YpAPhpPTQT+zNHqbh6BVBl43mY/2pvt2aIQyB\nbkmIca2nyPZoMsOkJzVqkXEVc5C3bILQwE8C2p/K5/+YUx1amE4fVbRgeiGz\nnbwZFzxB/lX2xW8NbJHBmzPqgCSAkdGm3Kyufw8KsHmXiwaFyScP+Dm2ZCPe\nYClIG3dQSVj9V/pzJTsiVTFt0RSHMRGE0Q2YocxOcu5O1wbzPk3M/pGdW+be\n9VjO\r\n=S5Rj\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-Rs2qw2Qkv6NcrrVbTn5Ssz3BuNC78gHnMznnduY3dPH7jsMBLXOHCFFtuUNK8CBoLO4Kxt5K400tiI8v44X/yw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCILgJrePSLbIXjBNXEMHPd6vfOB+6PIYPmXXk9lO58aQIgMGPlBvGQQ1UImBnBMZ/LLceiKLiSvVd+QzzUTbiEuo0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d78965e7_1525378605963_0.44185966213194483"},"_hasShrinkwrap":false},"1.3.0-alpha.1005c7cb":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1005c7cb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1005c7cb","@crave/farmblocks-hoc-input":"^2.2.0-alpha.1005c7cb","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1005c7cb"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1005c7cb","dist":{"shasum":"74402d3e34001c7fa900dcdf9279025d2ba37c20","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1005c7cb.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa7GKDCRA9TVsSAnZWagAAQJ8P/379oNp3ULyYI5tcO/fw\nNkNbCfFWGQxlMAZyCKBYUGTViWWzzhyB+zFlgCcZyznfK/VpfPhylcZ3E/ms\na5WUndlDDJt9EiBHCgGptafs9midtI9Ujf31hup6L5QdpBSuNndulGM0tyJw\nrlBTG1V5yDm8kSTgOoAajBUniod/XwghCN8ZiUVYbe/AUytcoNjrYC9mYOg/\nDEoL6/w9qkel7Z7Vw1T4K8qEN6XtJ2u2l+Jc5YR4xoU9pJd6kDRfI5G6UFkf\nDMmshvh93CG0wk+VvD92XCTV12G8fOvNs7xOnqwyIVSIvnG+Vris8z0Ssp1s\nsaaDqMkeLimu8RETvx81JyzHbp7YgdJ2HwJGZKdlCseVkkTicYIyMzwwxv8U\nepr4IU5tpjTzJR+LvPBCeG+hBC2dVnNgq3Rp2PGRpSSN+6tWFTOzvYRqFKMX\nojwkjfd6oZLKnSRu9ydJAQdNQAkX+w3YXHviywJAQZgRPFD6ha3+puUrWOTW\nbyg72IMrkd0WIaDRocLh/4EMfizLxi5W5k/qEyMQsS8l/AfTKkVmzkzkFJFk\nsYV+53H+iDYA2Lg0FGGeneY6+ERWxDpMpwqWPY1xGIxkC+JzrmiAXhPwrJLd\nn6B/Z3zpnFWBhvrml8zbVD9W4Uzj4Y5mrRCdEC8N0PYZsRDjOlO6SuKv3/nR\nXm5+\r\n=Gmo7\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-g+hTJHuE6Z/LqOWqYaKYPyOmE3yzts5h+Wsm9cYMKJCAdpvs67foatUC+qaErVuAaTZ4JQQECuxhcPwG4EyVKQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDETwf6E/g0BnnCQjkpDXPzb1Ejpad3pTcFxDtzbYCjVgIgPSTdU2K4IuyilfFijQQxzvrmPWr3o1HLReLhn0gklnA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1005c7cb_1525441155146_0.05506871769584665"},"_hasShrinkwrap":false},"1.3.0-alpha.26f43c6d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.26f43c6d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.26f43c6d","@crave/farmblocks-hoc-input":"^2.2.0-alpha.26f43c6d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.26f43c6d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.26f43c6d","dist":{"shasum":"1a021a6ece1c12e9be86c06d379aa289f9d696b1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.26f43c6d.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8eQTCRA9TVsSAnZWagAAYjIP/Rag3vk2Ili8DMyGZs80\nPc13EvyiH045rZX0BeEfenukRUmOkESv2I9IuwQ3ONvcOLe8UyLp1S2FZxey\nb+zpj0yrPx4IOoistilJLm1Gy6K/2kqo7Qg/74mr8nNCZPY4puE6/M3wn6Ul\n59k+MdwflyOoXznFTbxVqGt9km61zzxgd7w2kdG54NHH6lNOA+szuLPBrWnd\nQPxUBja/RvSdOVH6hfr3kpGESr5kcCb+3BvZFgc8E6Emo2pNuKBr9NeFiRn4\nxc80vVFGmGtux7zXrTHFoNCuuzBfwwCbr7zUhYJIQChV16C9o1GXHVMWvyjX\nsZKIwOTmcbyrYc2mbuEnTUVmrfeoWTmda/GZ5yDMUwXICRi9vHpeEX+CGgRk\ni8ya1S0RnIxK7tARhRvdl5T5ZRsPusxCftJyzCo6Tle6OvUKOUy3pyxQ8ltL\n3wH1mUZj96tMS7VHlbUtlPcI3F5GbSI3r5IYaBmoIXsoQe9nUY2rqpwNF7oN\nDi53eboohnBcT5+umrw9MJLbHU9tQfFcLBkN6GQ4InRnc4yb9jeCLFLR+uPM\nemuGPA2CFuuLV/IMSnonUQfzWXj3u0UoZO9mX4tCkbNFK4PTXit1QGOxwWND\ncyZm1sgLqMQ63kq5GTpVfKbxu+HgD6bU0oSkg8FuEqnPj6YpsRLkMboEkFDP\nLuo8\r\n=M9Lw\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-ocAmonPcNQN4GVYdikTanIga/6v5ku7D29fc2Uhzjx5bOiiI3FGCWn97+Cxa/AK9oBDf8VCjKfMk/bg/Xyo4Gw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE4IGki8RCbM4CtqaIL/MuPuo+xnR5s6usV5AjrLHbkgAiBuUSvgggMZE5ky+VYhX3tTC40zRI/Bx96uNrieJgkqZg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.26f43c6d_1525802003281_0.7428260876498287"},"_hasShrinkwrap":false},"1.3.0-alpha.fcec25ae":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.fcec25ae","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fcec25ae","@crave/farmblocks-hoc-input":"^2.2.0-alpha.fcec25ae","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.fcec25ae"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.fcec25ae","dist":{"shasum":"1bbe24f839175641ee19fcf8fcae6bfc24ef98b6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.fcec25ae.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8ezKCRA9TVsSAnZWagAAO+IP/2fgFXLXZEEvuUM80KpC\nUXY3C9qxmZA4jvcz7XQb8FyFTNEnNXRj6gbYR/LZAdkgbBZwO/EpM1XkXG9S\nzyxFy2FgG0xPaZ03DeEz3jnYhRNuIYSKAIBvJpHKK75Xq7IMiA/KOFiJG3Jr\nt1q7RlLX4nYs+lPMQJvIG/Qh2jKxtB+ru7LW9wXvqTmEkJGwZqo1gvZcCuv4\nLLIDBNtqK4okEXVF9JAG9imZOXDS3pwtJqGysur0lWfzpNDabzfay49dbsAy\nWUlUVMoO2CYyWObfGDwedZipjTu75S/oA1QViXZmNIRb2IWBLKruvK1/5/zb\n4w5/pMglhKA6Q3qc7cLyCQaukYkpb5JhLuaQxhuDt/VwutPuzopSMjxxsyGY\nSdn0jixyEWRal/00kWC+RLKeZDd7k4RL8uod7nyPt4LiAjiEs5HnPDd/InWL\ncG3b/Um+cTl2inJyYl5vmXHUaCeqnIxX7jWCUKej0yzrinFBbUPl1j42OqRr\n+tVZ0SpcGLwasS21H4M/T7SSZ1aKYiAg9QRmVIJB5jO3evXymzjfFHf1FnQW\nO3A6A7JkvW8afL14FxpcfddocI2idc9nenXW+pZAsEfnomiEurid4ll+QyFG\nZIbNU2707EpbwSjEwm6WMvjgNSi4jS4Kc2XJ8smUGBy1Z0j4rWwW77DNxddM\nKEmY\r\n=7ymu\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-5pq7DlFaYJyQm5ANkf/yHsXgnJec7XgXA+vSKv8T8Du5UOWHrz689lVSJjI3Oeo6pQns+iqE8BfO3zElnw6PXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFNAursWAKWuiIoWfgTNPQ5RAxVG/64Sm+GMG4PIHErIAiEAoVrckd0Fcs9CQUhd03cQiL+fV8eiHHjevw714NOnR3s="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.fcec25ae_1525804234430_0.7839268239662178"},"_hasShrinkwrap":false},"1.3.0-alpha.cdcc2d7c":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.cdcc2d7c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cdcc2d7c","@crave/farmblocks-hoc-input":"^2.2.0-alpha.cdcc2d7c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.cdcc2d7c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.cdcc2d7c","dist":{"shasum":"8d4edc7047e577bccbcae34b46a5013e856b1e4f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.cdcc2d7c.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8fTdCRA9TVsSAnZWagAA0iUP/3s2rCYpfRlvafplHiJ5\nJ6l3Ig//4pi6T6TN2XiK+ZzmiCTDq3zaSHvlrnaU1RtGM2bImetmz5DLmu5t\nDnNdoXEeuihn/K/H58LRRA1qlzWA8vebRX2GbeWHF5iDivwzoZ6U2rr9Bhgh\ntauyomq3DKx+63S5HAQGQ601x8guxHx0BntIRvqfukVQ6W8BlmXhRHGlXoFI\nHYo3ISufVFFtizSvKwJLDTKmHwMTzJvdEil1QkhiU31LMGHuSYYKfinxOZHt\nrgeaUHHSExmyFenuo7oOlKb1wA1xvUh7MZIc5d1+qLCIp1aV6N72DKK/PO3b\nrVQWT91r0HmhvsB3S923py12kcMpj4ieC7fpj9q51F+wOh2oDigq0gXhxNh+\nZYjB0XT0D7xyqNqCfVu7c9G2T29RbOzjZniv3plwHpr9q0JdXQ+CgTWPQqh/\n9/j1NOnGWATxKw1te1dicbZNfjGXbRXsQEhSPjs0jiIy4sa9IrM0ge0OpJN9\nuMBWIx89+BfinALcF0DKOh8Otl6fdzzw2lMn4uVlocfxB0z8vAIvARUyLINk\nYzvPAFlIGSufs3M4vOw7K7Kr6lQ1/7bI9wwmlkUxyXT76r1BQ7SPSwL9CjMR\nUyHfevf9/vkpS9XsEJxWCzDObKGOIUJkDGdE5AgsaAOkZz777wcOGCrjeHat\nUR0P\r\n=bp7B\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-ZTy5KpbTx8e7xWMBS6KvWiQ43qwyEnK2iaK88C5SyQDCr1i29Y4mTG/K2aUDfcpwyLzrIryrIXC/ClNTAaAR7Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCuk2eyfuNVMjeA2F+V8pr5s9cSleQ8xnQUgPsxRViOQIhALxAvieao0dxTbWiuoyJWIQ78xM9WZRcgxDSJxV28lDE"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.cdcc2d7c_1525806301644_0.9540016475594766"},"_hasShrinkwrap":false},"1.3.0-alpha.bae3ce7b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.bae3ce7b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bae3ce7b","@crave/farmblocks-hoc-input":"^2.2.0-alpha.bae3ce7b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.bae3ce7b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.bae3ce7b","dist":{"shasum":"750c63d2b41d9165c4ca02f453c7fc16fc8c1953","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.bae3ce7b.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8fyICRA9TVsSAnZWagAAQQ4P/0RjtAZlxYQ/2a0OeRpa\nlJUQ1wxpYirAfQlhnayrVqmGDiBsN0EeUmJurRMJVFeJWVmvP7Upvnrh+2An\nUKPuxu5qtq205ERRtx2mboH/RX2WO/Dt4H3ffGHnVN2fVigQoFdP4eFnfPD3\nqitVhYCtLRSuj8ViWcnCyUzDvRqE1NYl8bI/UAhL6LTKOnbMDTf+H3/mlQyZ\nseMLvwy0uCLwxYuNEgNLOvQW4mZTFPMc4krRdvv4ppYiBsIiUAYC+1NYNAHw\n8fumhVbZVobjWmLU0Xb+gIanYZzDICzfVoH9vW4xui5lpzAFMa7KG3FfUbMK\nzRwagnNHU3DGBHKrvrAIFkFC5vuDIlqOIjvG/SOWIu78ekYE8Zg7xT+SXWGM\nALTqbhZIk25rshHs5IYTjHha7sr48hpDdKE9CcmZEiT7tbuHowdKOL3W3q1P\nA+ggJgnxg5vT/f6omgf6z2xGx5i5VKS/gbckFASlGSBUUnargDKYoZ7lO4OE\n+sqTbe+4M1XFDRIiBVQ9oG9o6mk5tcL+tNu/g01JnDkm0KE9OEuC/bqnYWIX\nePmlqiXdxVOIiuQX+rHQGRq9zW6nQXvx4Q009yaug4XnoEQnpqlQwbQ90Ro/\nu1fpAnSz0G1lakBXAjcZ/RKeZUBWSGBKBy69SxVMAW/lndubDD6j4ySUMXhL\nEo2S\r\n=B7lt\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-Yk+gBDEb8M5gEY2LqhLai5u75FJdy3/UOPb/vjvVj89damuw6Z+6Vc54KFhMouB57dgvR/31MxaHZpY76Z0EqQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICVfYqmOfK/lrptZnzIvMvAjP4k11Kjcyg2wtfFT2giiAiArW8VADFzkd/EfIdNbnHVuWB0riyJvuebwV79z4tE29A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.bae3ce7b_1525808264269_0.09434073208721916"},"_hasShrinkwrap":false},"1.3.0-alpha.034eb3d8":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.034eb3d8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.034eb3d8","@crave/farmblocks-hoc-input":"^2.2.0-alpha.034eb3d8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.034eb3d8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.034eb3d8","dist":{"shasum":"411fad6d6d6d3640712a8348ca047e452bed8a47","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.034eb3d8.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8fy7CRA9TVsSAnZWagAAN80P/29YLPxPIbM/aF/xvQXn\ntOPsfr0hfV3H+QMhdn8nmzqe/2ynvWxMHSL2O0rqbOH7CEiNtGDsOtixzFYj\n3jjhduSU2wmwOaTdMKETmvQ6P914uJf37QltbVAJ86AEhM/mQFc0yAMDUFqY\nb+OHo0XhMYqNF/s1uzGf9LAfa6LfsZG5XKlhXVA4S/rr+Y9QbpUoqsfA2G5K\n5UzofxJxEnzNqxFV3M0Nt5w1seVU16HCdcoY8cHQJv64Orex2XqyLmHnCAes\ni/hwrg1RpyVEDdMML8os2JQHC/FpNdJJaqM9vxjgOnnKWJi11bSlt8UE7d5h\n/NSuyc8tUVO+cMq9+hxm2BduMs2ktTBWdXxdtfJcGMxPHxA/uWqa1ZsPAAZY\nbjvtFolXyjSF9Tj+P/ckgMsQb1XnlfVOLXw2SyZNa+m/YohoGBjmaMJBV6cN\nHVjv8wVvLdb+wLFOX0dLcq877FxELCMsNKJ2tTX7ye7qwPG8kKJqGFRtl51E\nJTwRBtAWAYY+yV7azT2q5iazoAman4K5ARI7TbooLI35cXxVbXiAyQuMji7g\nWHLnxYkx5//HZs1SYRe/wJ9Qj4fVNAsIDgPcCAopF66XPreBtg7mKlZxkpVq\nd1sf/tkyOtAK0M5pjzSfbQLvcTg9mfSYhi+EzIkmoGiB40Y+COLx6jYerATO\n/2SV\r\n=aGsx\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-kBUJDH1AYgwgLQlRe/LYW9FOvh3uA4H41A93DyExW4UFZ2f07O6Zx/uA7sJrjXUotb1GCRGRVPpd4L6KNZWIsQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICQHpcTRinxFs+xfnaeMVOUOi2soevU7JsZyPYBC8zQWAiEAkiRFPLa5HQqZ9rnYZkKeWk4VoTG+Rgp1/3fPu2SzHbk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.034eb3d8_1525808315507_0.269456210607977"},"_hasShrinkwrap":false},"1.3.0-alpha.5d55608d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.5d55608d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5d55608d","@crave/farmblocks-hoc-input":"^2.2.0-alpha.5d55608d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5d55608d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.5d55608d","dist":{"shasum":"d9fc7874d03d0db40663e7e1e26ea9556dfe9334","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.5d55608d.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8vN4CRA9TVsSAnZWagAAJIoQAIcBcWjN4NcQWfV1PPZ8\notzoVxkHEaQbsW+XbTIVtuDiP4igFtkXRGQpOA3DTBKdkRzWOal9J8QTnq73\nfO6V5YkShvTgr8meTB30vJdNPdBRRT1ykQsVShU++PDrKCrMkwAgNGV05GlD\nIRP7Alpyyqf8mkefQPNQjNdJobilzCOeoAFlcjoeWndAuGypvCI1hcwPp6yW\nlP6kcQPTGdcpeK9t+Yn7H9hSYFUI/tiK1dnY/ErMouD6Je02CommP/rK19c5\nLyK1YAuf+8GI29NjO0FJY//wOjFVMFZ+5nB+ZMnst7yo+7B/GUcAE43WAhXL\nPtqV7u1/9XzUuf66f7p3DmWFLMX7aovhe6xz+PRzlMEe8IYllYXOkFpnBRj/\n5a8lodlScFVVSh0LMN/+hOPWFCpi+YfW+AeTmt7QVOUcDfIXtR+QDyBhwDRg\nXyCqD1fCai3t1XY2EhEVmskszy+qz72ZOQsfcsGnkForDvinpPAcI9oLXahy\n/aMm25aHFLWqZ6NPBOaafENhd2EgvTe8jqM7RD+5Xzmq9Mgg0gtRCFh/EMyQ\nYoAweqxbI9tzY/1HB0884JewVw4wE3fGCxyfU3rXdO9A+Sv64C5Epuhfc7M+\nV1z24KWST6uh/4J3yisEDdBPOSdoxuTKe7mF7pFLlp7BrJmynRIhNO2BgQgd\niIK/\r\n=qac8\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-JjAGcnbNYfH2Gp2C30bFeKRYeXt7TXK/WBOPt9rWsuFkPXMFJ3DUOMxOtP9DxLTNHincV059Y8HuKKJHBjZOMA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEY5a9dOFLZIN9uTuWaWNC6+kcoD2rQGW6S7Tgvrddt2AiBd+BGXTlm/yGNQdU42SRJTN51dGX0L66yVLDpEnAYE5A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.5d55608d_1525871479949_0.1193345192598727"},"_hasShrinkwrap":false},"1.3.0-alpha.ec36c80f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ec36c80f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ec36c80f","@crave/farmblocks-hoc-input":"^2.2.0-alpha.ec36c80f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ec36c80f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ec36c80f","dist":{"shasum":"694eae5f02a2380eb14f2b26fb0de000c75d8bc4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ec36c80f.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa81SjCRA9TVsSAnZWagAAYJgP/2ZtxsNMrfXubkI0GaR2\nxJ95erxeEEIErpmJndfqJd6gBmRA18N34Floi+ATG0yXC6WNEBi9KXDucyzq\nsBKvPUTSvg0B5ksCRLfP14TeBb6uiPEOzpaRxX9a89F3pvBgOXHi+tGqSEcH\n7YKwqDObcMdJ55Qd0nC9xyNqKGgjvbQhJqnT13S8NFnN0EgDK3Mxp/moaMf/\n3WehtIovPXGsazCxIJrU/QKPKtxsS4Or+qzsFzV/a17gREn/kjmNbA33HACr\nAvmusYvWWs0sHjUKujZJt88n5ShQE9FSM5U2UNXAJ2M+zqJy49Ilmz0Mfpef\noDwJtfWCH1+nYo+mtmHJpsPsW/yZECisI4RMaWU91jiBzHmucyxvMwsLcRj/\nZZOqH1SV1PdKRlOEuahUdSAAPx8hSXevufDv9AF72VFl/1YTpYY4weFP6ahY\nUcyN5Nx27UbHlyNGlvIJYigkuHNR4VhCNFTTrOfYY7nJF4r1dw1WIjtAM2Es\nSJF3Kr5uPb52wNpL/KHK7hQZv4gJJfK5qgYwpgVpJV+8AB4AIIN5+XtmPiuV\nvu7naA6E0z8aJCFAsSM+KnVSPV+YCGrmA2XTSv3SOW7vj35l7BVJxyLBxz79\nj4YneaBVjYdfM/tV9Dm5K3nWHsSuKXlxpraHchufzfRrZpsroaifOEsENHGc\npBKU\r\n=/i3u\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-mAGd0ApJpmsd84jLa0qRvjNealAGE9zbGZ589pEwvrvhXEPnlCS3r1eFxUXYU97Y1WLjsS3Cd7Ae5N5OVkcbRQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCs3ubhSptMkqUpxgVa/EknGsAQ2Z+p+St/lYTcRk3l9gIgAZJxZvShCkVYebEv8m8IfhuFzvYRDnd4zoj86fl6Nzg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ec36c80f_1525896355612_0.8549253783473618"},"_hasShrinkwrap":false},"1.3.0-alpha.e0b35a1d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e0b35a1d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e0b35a1d","@crave/farmblocks-hoc-input":"^2.2.0-alpha.e0b35a1d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e0b35a1d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e0b35a1d","dist":{"shasum":"613b125ef01228902f30e15c67803a9fcde30bb0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e0b35a1d.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa820cCRA9TVsSAnZWagAAaxEP/1XC3OmaDAO8glDzLruS\nmmnyesXEtcnyn8/QFLu3nagFovAWZTxgElsiEuwVpgK+HnDemEyEh8A9bBwg\n1E36q/PRjjPMi/g9a5MFfYCPpNqDHjbkmgMsi98bQN5QPiB3dOYSTg3LhVLV\nzgzUBw540nif69oLrITxAD6stwVupoDmsXmj83Q5M7u5jL3bFQlRagpy9Ipx\nnZbei5B6F5dDDwFLzrIVQ5Da/bOw0kMBglwYC/3d931DZ1CEwb8kOmCUkeHX\nRUKsr70c8Qqa7jC5A4irc+6/EIyzJETAg++1HlmDbXLnxz8ZE7YF4QxDrfgW\nT5+ukv8/JnYbchDWMzzDQP0q8AAU4LVqArcfcYiV2aF6TYYS5N5MxZmhD+WC\n7zEABCFedTajbkgzmm8DcbRkN7MR0LH2L5K4G8+/V2vZfnB7EuHjOpD8J9BN\nOKcUSVIGH8UB6l7BrNSactJUXcrozvyZsDCySh2K0+PtQLTBbyeEiuZAMlM8\npyvd4I/LQC5A5yj2OK+qwWKA2lAt5+vYLZMQkMMVkrW6iJ8NOVGQ2wiopIZe\nH866Z/Wt5TCvDRS7dAFhcRm7/XchLEERg5dONqplpjtWuK6piAGcC+QWSLXo\nh8Fk/HP773CD6zQLbKmIt2kspl/ccjK0Fv+Yo+0JobEfvrp//gJUA5DchrRL\neSEz\r\n=aeQi\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-kIebV1RSgqeyR0s/7X6CN/sSp76IaErb2gBLfGuvloYbz+q9FSdCJVwAUX5M7PtC8wnvh6iMJU+oVoSpMmEEpw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVPFvuYfUxYjt8I0iu1gz38g+LfSogbGCZlaE+5AL2/AIhAM9VeAqe3Ar3m284JhW1qqwl6scIR8iKjuC9rXQtRzeu"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e0b35a1d_1525902619633_0.35803472684350535"},"_hasShrinkwrap":false},"1.3.0-alpha.e85f3855":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e85f3855","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e85f3855","@crave/farmblocks-hoc-input":"^2.2.0-alpha.e85f3855","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e85f3855"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e85f3855","dist":{"shasum":"9df36f4f6713072e30208b1a024df5ac653dbce3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e85f3855.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa87RlCRA9TVsSAnZWagAArYoP/2c7Vm3CldO7w1DtSB1h\nuelcMpxVHBvseQj9tTjQ6jj68TqdzhC3ZDk2Gkf8/eWUQGccK/K3/VpQNkFT\nb9JwAtwq04xjuL/YTn5OsrTXT29dhnIjzsYocz9WuoZK526buy9l5q/6buBe\n2vpTX/uzhyvLQ7BFlVcupAXyjfUfM/NJYElgBeWSyZ5Dya1vhrhXpNVQbzSl\nBDzu708sBDZRM5k3xp1Kz4VXm7VMgMXufo9Pmi16WGllH1p7gOVXPa3h+bOO\nc8o4MeM9OvThpyucFVcepZZwlf0SBzN7ONwjPr4PMkklYkUPGmY5sRJjHkzI\nW9tbchPqf5DNBdJVITZN/VTqErRKhZrMTZaMSvAq2RZIrl9v3sloTtB5sqi9\n+otFr1cOy8pg+LIaWA4WUnU4kXjfH83ar5SmPNznbG/Ga9xoIshK5OYpymcn\nysRXQT1q7o6bNGMWOCisPsNMbUcbFLXgb9FHngP6V3fyLlVW9ZRJh8iETXLO\n9sorOtjKKcBEt1SE2jM42EhMmT9bkXv8x7Bpsgz7WisAYLed7aNvcJYo+dpo\nEYTat7vpsNAiPztwqp/+cbN7BvkPS0iICv1/3LxA+yXHk3Y1XyNKNeSF8lIO\nDIVxgf9bK/5gal24RenWaY5MXFBBaOgsQnVN8Va+iIC75LbglK/tZdnuXBLR\nxDW4\r\n=20rW\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-ESGMKz9QCbD5Ftt7h5iSJtFFvu/gYN13m7JfmaxJFI+TCuBYk6PhLz5dVulkqyiVkPkFhfqUIsTdn2PUnFmDnQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDz2BJUjEE/N7m+21Gh2Y9HuW8hPwahVjb7RaR5WqMirAiBSMGx/oSxk62TKnkBwhZ8UBkFzYTYdt+QHOitpDwKjaw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e85f3855_1525920869025_0.03447534576917777"},"_hasShrinkwrap":false},"1.3.0-alpha.a38583d8":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.a38583d8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a38583d8","@crave/farmblocks-hoc-input":"^2.2.0-alpha.a38583d8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a38583d8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.a38583d8","dist":{"shasum":"eb3e4d6f92ae813495c01cbb2f39aff1967f35f6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.a38583d8.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa88APCRA9TVsSAnZWagAASbYP/0R1Vf9alq50lRIs8vSW\nl2RdwrAH/MJV0PNtB4jeoSVkwDqkYXX9VlChgFw9hfqOr/HlhYThAwgF6nIG\n8kNlCwTXM8KOl+/nLThk6sR4GeQyZz0ooEtjzW5Q+vBFdaSsTtIq8eav4jGf\n+U1moLnDbMDZBV/qoZLUjtELgPizHT+M2cZm+SDE00gNpjBIcCq95jqYsAa/\nczIfkyhMH7UOLtsFfhX/SyFtU2sBmh6p364Gaugdaa5qfZLozJcCvEf95e6I\nQRniOxNElaH1I+5Jq8FvLG7mf1qsHViOb/xI92Lzco+cc4F9KPAKdwHDno9T\n4rSgau4Bb2p/UHx04aRLuxtRw59tlXGXVUb0BEXjjnA2tKgWIO7EK8YnTxK+\nlSmLcav0bdF/OKl0RwjAQxyK30pYEId4W1c4dicNNB61ULxFywnVInyAaku7\nArkTQPTECwwD3b1V9A8Ay4E9vuzDT5q4aLrmgdUi8lJiVMlV8qEci8Mr/sWm\nirRnJ8yzE5vbXH5+FYnIpJr98DhEyE6MIKmMReJh1CIjUEMSJy0BufeQ0F3+\n3JDtmwZWGueq/v20oQjrRz1dJVwcWavzNItxr7u3r+kkrnFCbvU4q4EXukk1\nFE2iauSE6HNSAlmw+7EeTeEM+2q9pYfiz3piCUQpV3ULtJFZUd0OhyOqLzuO\nDX1k\r\n=kg9/\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-7nOGrelPok68IoiUPL3Ru/YCcdbX0n8YtWj/1rB09YAGYnQUsFCUhzQkCsWVl9KVIUCunLSufAsIi4MpoNmQ/Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZvj2OO4nSJRwasaSy+snobrd6E5Ijb7KhAEc1CfTwZAIhAK2BBH0Cpw6+DZS72+heYkv+fIv6cNsANbftxA9SFw/a"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.a38583d8_1525923855151_0.9947889577097602"},"_hasShrinkwrap":false},"1.2.8":{"name":"@crave/farmblocks-input-text","version":"1.2.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.1.2","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.8","dist":{"shasum":"a0e33431ef3054224516b7e09342cef17c336f63","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.8.tgz","fileCount":13,"unpackedSize":24528,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9EafCRA9TVsSAnZWagAAD6sQAIk9l+ajebeXZYHkqAQv\nfeERDbWBQMSGdu4B7UiIUL2N35Bto3+s4su8HCAY5z245/qNPwtb4RFe/QlG\n3aETdAtv1Nt1agzO+ed26XtFba45nQfdK9tQnFnNeM6zzDuwnCqMJIjJAsgU\nmlayJck/38S65H1xClHIOYnFs3ovl7A7+fzHMdTFP8unYAW82DBxPvsP4Jau\nbiihV4N/UfAzTiFk3OPw2uIC1harUVQyZdeVFVJB6xUPT/oafipI3YlO+OZ2\n9PBbFA8mTPUCn7Hz4/Kl2wd8E0i2zzxJYyw08GHEnoJl2yijQwQXzNSe3R+i\n7gNmO/wSq6L/H0U3axwv/ar02hT706L94XqW7iIekzdmOua+2CqBixfaaLV3\nqSmpa2fGL0dPdGUrV4mcyrfD8WJdU3BBCHpOuZFsIBrLEBcVQ2jUysY3/092\nHiz+VEFkiY6cg4ce9dAcEafD3Ct1WslcIrZ2koi5dWbQUWdN2yDPro4ykMsM\nGoB24kmgao9g0r7py01FkMdPrTQLODZr/dBS2ky7l1iQ0TW/eXT2xfHbYOdG\nfNftUH1O7V/NOR/zo2Mh2LotDGeDCVYQqhKyIM5dPVoU61KQQyjDNSSYYDr2\nHdafuVSM6xZJFQ5EQsSHeKLBAfNUxsSeLlIqVN+VfMzrFE0UjbaROcE/2WcO\nHS84\r\n=hdDj\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-SqYlVNlyrjBPvpfGXZvkNPkGN/94huDQ99kSdaSyiIweRkI0mklsbNoQ3DOlN5mqn+O+YlSED99sq32Zj+gCIw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH2S2LN9oEmrxVwAbcmJsXxefPR2dRM9YW8f79yLCPYqAiEAmvyNpBAsA2Dfp4KPPf1uXX7hJPGUWr7/iOuMpsGJNaE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.8_1525958302920_0.1292101461368942"},"_hasShrinkwrap":false},"1.3.0-alpha.0bd8b165":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0bd8b165","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0bd8b165","@crave/farmblocks-hoc-input":"^2.2.0-alpha.0bd8b165","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0bd8b165"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0bd8b165","dist":{"shasum":"1d2ac77c56cc8f0e554fb96c8ddf5ef677513d54","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0bd8b165.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9EeJCRA9TVsSAnZWagAAuDQQAIuR7A2r0p0zXpTrPTrG\njmqvr7Nn/cnb9wsJIQCQoVhAYX8sFa+WdM9IrlPTkSdI4IgeaGPEYttzrnxv\n9Xbc3iCgI+25YqoPhbJzyBGJAZukqYc6vAQCbqKGu90axXEdjvsDiwFjbAHj\nMg6DQcu409BOm/wblFERHD9JcYecvL7TdQif/DMnEu+zSPCeYUvlZy1sZynk\nTORCGsYWqu2MwTlKLYWgCBzQEMe9f1cXks+WdQ3y58DfA2Jh7tTCb0aqURQL\nS48ERzNjRsOTxlw2PPwMwTk/ZHxpa4EZLFcbX9SU8Qws7sWXvJA158OC3qQz\nOSqqRFoixQQoQFn2S5/98FcEo9nJlPdKNlv4I4rGA3MX5Mhp5Y454ByuKcTs\nUEf5Z5k2lji/ZahyVbor9pTYwR16WzeaNTL4oRO136upn3IPkrdy/KvzNfhV\nU8coTe6pFnPI2xBwI7itznlNxx4Mg+YIUsYk6YFd0AR0rRzC8E8RVvxlbBQb\netCZTIXRgiCsx7SimWnjsh8NeBewR2SodEKrs9AC827E3ZdvLMsPoZnT6s9S\n7mSt5oxa+NQ3X3oydHhIumcvk5OJFHiKA0M4vomrW6ilF7arSNoRV8sWnCh3\nCUu+4yuH3qqyHmXD3WcuxkGSsp+ehwjkUEWsqmWUICGFdIXq3g9/l5I4USRK\n20ep\r\n=5oOM\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-KZR9NTmkrdqIttb1tNogGX9fOP2mPlB8R5piwx69K+uIM5LnsWu59B6lbCs5jsW8q5bzVSqNAZoKP+C198rACA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1v/BZt6eOXkuxzZrd9Lzg16YIgCc9weg8BWDFExahWwIgEycVlbhTF3SLQ+wXdO+KP41KugZiNW58kys5mUhm+rs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0bd8b165_1525958537334_0.6723010693675178"},"_hasShrinkwrap":false},"1.3.0-alpha.33e525d9":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.33e525d9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.33e525d9","@crave/farmblocks-hoc-input":"^2.2.0-alpha.33e525d9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.33e525d9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.33e525d9","dist":{"shasum":"97bb44e6490aef3c09095b881ec34cf3b4d6f334","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.33e525d9.tgz","fileCount":13,"unpackedSize":24872,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9E3ACRA9TVsSAnZWagAARSQP+gIB9O6+0fnFJji+zJUC\nbA7iBEc2gFyM85hAiamCuat6Z8S/jSgVroNqZ49/S6kR3oRNSxMXmhN2vtxr\n2LNflXttXbLRwUVkzqDp12zxtfw3JkSm+B7zIxe63dP48+rBv8oamXUZ2pP0\niCYy4bHv0WhkFuzDtNxgCLYEO2sbNdusuyrutQUINU4dYYYf4aGbfcg/Q5Ib\nZQzD6IPE02HsBI1dA6R6Q9h5v0+PmyeCOcDKU4UD89ipR5QnoWwzCJ2PBQoW\nGDJPA2Rfam/wr/CSr52HcZL/2lv60ex86BcSFEGfQgnWkqIy5fK+BZBNZS/1\nyorTcMq+6HohA+t2e1EXWiq0b3AbTH0x7hns0ziaBUM1H+7RrMBXmlO16jQu\n80o8PhVYc6jLcXMv5bsf1vfB5v579z5I9SAuYdWW56RUmKXtZoWDJBheRf5a\noJPrD62AffWMCG/VnDN4H1ae1S/2VnQfkj//IHiR0oAseJAcG5QgIIUUkgw/\naKeV0Zn2DqSU0DDVsiy+ByUtHSRc3YZgkmXIBx7K/ZW86JTEo+D2obXXQTJb\nleO4/jfHkIzD1/CTlaiVhRPo5coOfIhYPgm+qKS9zs+HyB7WSqDLCe0sQWOQ\nDMtpkgpwI7trIbYw5JoOFzzP+gWeiQX2o+hX4X91vWmqdREVewW90HIvVOBi\nTzcA\r\n=8oEl\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-VuxQCSTlmYxWVCWgwFHm3M+IJjitDMkxG9jFYUnZR28X169vgtDsQXSWJL/0DeyHgsdvOJ/edPhxJizi/LDiUg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHJ+dtCL14mIVKxDKKPAm6R/nUNoWxoQgGg//z/dBGfVAiAG4ZjUdlBtvkWhR+Ph8G1lqGvOI84IVsfO9Xx9m+ajZw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.33e525d9_1525960128481_0.429490891136852"},"_hasShrinkwrap":false},"1.3.0-alpha.1d892ca9":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1d892ca9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1d892ca9","@crave/farmblocks-hoc-input":"^2.2.0-alpha.1d892ca9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1d892ca9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1d892ca9","dist":{"shasum":"0d6a16f682ba7c412bf2e566665b94363a59dfc8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1d892ca9.tgz","fileCount":13,"unpackedSize":24872,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9IURCRA9TVsSAnZWagAAb9MP/10VzuYUPOV/chJswYuj\nzQ0cZ5QJbBHEkcmMRXoqGI/N74xeknJD70dCy+numxPRGiMbv3+1dUOM9HNm\nU+ldmZy8J3GJn9lLZYtir7LhqEokv4Lbh5H9dakLQZ3OzrxW2NxfKpWiJWEA\nprLz2lpnfSBtwbpTMMxzQHz9DODnQoGeeOml59hcZaR9gSqaX99ykwbCy50e\nImSUVTtKP7V/srYXC3ZQ4z2206KUBvfpPXwTX0LwH6e2LdOcFd0DdRcrCuao\nniXN4Bto9BEFObATb4SK9VPNzJqJMbfi/LS7oPvAPDxjz5wYWwyJrKzxeW4v\ndZKiV0emRjhK3kczAe9eCOyRGvz9/+CwAGuA93Vl1mgEAbG+h0/Y7SkagkDt\nZPASTolWTHvpoWDOUUkw3xC40/W0EwOEr4HvLmOVNB698chysKZV1JezI8pY\nY2JP1iZp7eM54Qll90J4mr5hkCgIMyk5kauu3ulGco2bfd3DINubRN9p3IMe\n5W0ul533z9ki/ZWVnzNWHhHELYqGYua07qqt03A2Q/5UaQyqO2dSS/J+qvIW\nWYFpTlzW2QztnsgY9P8B2Hj8m2fNtV9MzZxk/C4hi89IUlvWsphsgwWrf+WJ\n+FsPGfmCQzMTuXdvm3OjMVRJNRI569ya83FRBEYP/2nKegrVz+zJaZe4Wddd\nBsnQ\r\n=9unR\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-g3Q4E43ASZu3ov7FWgY0JxaaHKqt0VtLg6t7cMY0gYWxFkYSLDiCDnLqYd7MGmMnN9pO/K2xJpDS7iwO/0ZTYA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDOuDBccfJE8YNqz4PcZ7N9kw0T2+EgKKhX2FVJueAdQAiEAvpoo+GuGn+tWWaDZ27VWBbHexPdNWZT26b6M/RINowM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1d892ca9_1525974288939_0.8275176566416993"},"_hasShrinkwrap":false},"1.3.0-alpha.3887f597":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.3887f597","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3887f597","@crave/farmblocks-hoc-input":"^2.2.0-alpha.3887f597","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3887f597"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.3887f597","dist":{"shasum":"3b6bc2258249182cb51810b114b3bbe0137d24a7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.3887f597.tgz","fileCount":13,"unpackedSize":24872,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9IuYCRA9TVsSAnZWagAALiMP/0J9kQGuXCx/i9RR/idZ\nu3NP6mTymp2FX4UCO8MwTBU6h8+9ks9pccwgWSxYd+GQnvS4Lyk5WQXBLCLv\n9ZR53P/bwhTZ4SaVS56uCBB4C3MDJZlftCsG4JQpPRESRrZGsA+a1Hjnxxe7\nUhi+QR4mSzGkh2XOcXE6iTTEm+0BWc8tYMRvTFebYODfPxUfZiwkWN2tkj3Q\nR18+gsHn8GeYW/KZsYYw8E4JVQXbRX9F5Lht6IER72rmzLk6XeQQugb2NOUF\nOgrQ6KkKhK/Sd8t87q+hz5tKHxSfdInDk/rO92H62GpHZl3SnSy1rcif7/Hm\n0sPZn1EC+yIbBKj7BNNcUyBT4+omWAr3kxu74P8YRbGz8DjEeZxQ5DcSJkEc\nuMJBcP7ihtibHiJK4dnOZLg8oc1F8qiV0dLSyPrQUZCXFYlDpGvYi32rCfg5\nELAJ+p01hdJRNHtEqwk8QpcjpHbvJgrrIiYe/QFakl5H3fbclLrsd2JEjvL/\n64TAFT9SNOU7uHpbGxHEvmHlZDY4MEoOfF9fRZAy3DDB2twa1E3PpRvfi8e4\njB1aWWg4eL7EvcPdBuFrcJKU6ggGYDsPGjJntBls/ih3rc7P1h1CL2qhKM5F\n5IVIddu5mW/mFzQHDUTMriOUQS+5VsqiiSAcIbqT7o3Is2tBeVk/HYdOb54O\nBI9b\r\n=xx2l\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-mtjfSpFVmh9xGS4Xdhh1+6cU8jeiuCv+pj9J8am9wWzFMXFCY2fs/U0ZofRuIZ207FrKWxqPS5DXxYS3h7KRzw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtu8wJD7D5r3dlAGHDZvNgnSUF5oAhUS7xhMwvxffUIAIhAKR5pC21+/hTdSBe3E7GGc0rgruRPzCAQnbZ18VdQlFf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.3887f597_1525975959945_0.8158576360429122"},"_hasShrinkwrap":false},"1.3.0-alpha.cd38ec77":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.cd38ec77","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cd38ec77","@crave/farmblocks-hoc-input":"^2.2.0-alpha.cd38ec77","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.cd38ec77"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.cd38ec77","dist":{"shasum":"41006ba22945d5bfbb867af2af4666c0e63dd16c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.cd38ec77.tgz","fileCount":13,"unpackedSize":24872,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9JdzCRA9TVsSAnZWagAALG8P/2VigNZ2xk789lOAcrQN\nqgMC7UI3USSdKKrBy52n/m/e6aEPbDDyUPljMSGIWJX+osz9CLripXrhVDZX\n/v/MQjW2zXtq962+cNQmktwrVkDJDrK89oCI8hppsk7nczeo5SSWalvwW1hP\nowctFawEsSMLIJJqDiU/UxGvSwQYHa6rIqrBDzYqYijo+/+ALJALnNk8gpgu\nbD0TC63AJBmA/attVD6MLK6OEZCDRU1UleUk/hn0wlMlB7FXSxtLEWif6EF8\nJKz56WqGs0MnO/uwFpjhVh8mopiGUu4opuOQJ23U7fi4/68xo7WNRvK7lmsr\nw8ZhZclB3HBgmv7b2qWguWwXRTyGSexyP8nSmptPnSQLvQZhF2c9JN2L2R6a\nO3h7dUEJztJd1CAMMivjwhtluU9HqodrtEG/fqxYdXBkl2BepgHRaAqKUM69\nNUMBqkza8OIefesTkfxWsJgMZwbPAOLNV3hDfBXe+UN0AXx2p07kNHwL6oxK\n/tWxo/NjTNKo9NLy+PISZ478M619yrrlW+NMn44y6BomFEl5sTxgxAtJZQRJ\nBDe37ATH452jkwF02byAWih5av7DgPz/xi8n+K5J9Ob0hM8yu7qMirkEKW8s\nnDEdaicvYBNImopreFskayK2Q7715a3VXAsXU1lAJlx98hCgQVHZLAjK+r0O\ndHB/\r\n=SHU3\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-dEsLl3/9Pzr97x3HYifhakaKR46+LsBQDJCANLi/37GJP9TQrgIjEhD+hwJEU56lO4W1BBlFJ0MTQNkAsCIfPQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDn/GyqZC+ACwzNCGzJa12O5sCtUNV0YjBrMKi5FnVEaAIgcE4e7QRbslXKWm2WVBYz7dSJ+Byo/4MXhW25jIcxsY0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.cd38ec77_1525978995054_0.33199947769225346"},"_hasShrinkwrap":false},"1.2.9":{"name":"@crave/farmblocks-input-text","version":"1.2.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.2.0","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.9","dist":{"shasum":"c165176c49205c281aab181ae0a713dffceb24c9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.9.tgz","fileCount":13,"unpackedSize":24768,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9JlYCRA9TVsSAnZWagAAjHYQAIRottShpm14CV9/ESyb\nHUoL1Jyp/sGihwbjKik3WATwZZsgp03W0rg5Nq3WhDBesGwT/gqow4fpRkon\nhD+AmaDiwgWE4bHhTOsKqGuYGcD7EtypAL6jyfRjXsw9TSyUXOn9UPE3F+C7\nhchvHaPiJwx0I0zeRDgjx+BA7/HhIvq/NeYsNRQNEbKyb3aoeHZuGMP4HJG1\ncseVPBJcgmyYcxh3jwCoPgMeBownzCop+BqzAy8kNLd6rI2H2Tzy2vAIdAAX\nsruTnwtegu9Y+BCeGyDnlLQc23UCKvXm4m0mqk73jtiVTME+O10sDQhQ8JDN\nXh/4f2e7MLYVtoqntC+nmwlH823pttKsg7mV4AHjf2r5EEJrBL1mF9TmJEMy\nsLNjvEkxdNgzPBHOLsGIhQcOQEH4Mx8d4jIm3DOzEiG+YEh5o3uCjxnYonC0\nBJXQCg2Q6HSvNXJVUHtOpFHmNqHwZ8emadIZaJZWRJFJR6x1fAqWjEiKY3wG\nOsBrLKKNpcVlHrqqIo+L/S9GilxMOR11BLibDW8GwhW6Wo/4ilFkBSGoB6sa\nAKFxnrfTi3EQVPuVfsfOVasw+plqeTdJi2ZKPocwni6jJxESU1I+o6xVO5Ha\njJ/985azsNfnolEfrLfWRgmkGMwCUA15NWNRgJ2C2FsHiRM5e3NushKmsr2H\n8IV0\r\n=aIm3\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-JnioHKQs+y5QGj+7vXE2v70LYSylloIv7M37Oymhq3sH1h6S5BAqmPMrWfij5GhTU6GUp1NOg33GrxhcCtCCjw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA3S/KsRnloaGcMPP91Vmh913ZLrQFi7iFinmr2BqA9lAiEAjzDC2A5cKQrcxDzIFhREB696bnc2jagDAyHjUrLsmZk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.9_1525979480237_0.46525372479003724"},"_hasShrinkwrap":false},"1.3.0-alpha.e18e8a8b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e18e8a8b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e18e8a8b","@crave/farmblocks-hoc-input":"^2.3.0-alpha.e18e8a8b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e18e8a8b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e18e8a8b","dist":{"shasum":"3d2503784b5a7dd2186ba12233e54240cee04103","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e18e8a8b.tgz","fileCount":13,"unpackedSize":25112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9KjRCRA9TVsSAnZWagAASRIP/0C9XipIu8Kk+U9I1uYh\n6yDZ105zGk/cOb9FtsBxDM8plZAvjDiC8gEK31wl3Cgt91OETBGlo7LDG5Pe\ndxeQhe2DwB3Kj8ZR2ZjokQ9+Flukkk51gm9mgjiLdGClvsU4OyrH+nl9PUUM\noCjXrwuJOkllM9QwzZM9PVGqfTvOgK0FJywR8FpZa2eXoQR2BqVOPl7Nma4O\nfGIMdWrReEovUGYMqJTOV+bpnvIms3JWehBmfnNsfUIPuxi9EhqDsEWRCmTW\ni41ckxXO5VQdJ+0IX4nZrAZ2zlzyL68Gk5HZhpLnKmliDRPD+idrqJektgSE\nB+89Yl15fnjKoekze+TrpHqKcoh2YRUXUSnvJF29kOgVr9M3R9QrAc2AhSSV\nzaNj4vl7cqbal0cs7KxkCeCvU2wVp1oZlOe8SAKpn3JklMJ3MEfVFm6zSs2Q\nsPovjJrCioy8ILc/WI5WXGsakmXITSo7acolA4kCs2bWiK73g5eVVHWh0vGo\naoirXFrgEDgrkZedh6BQDBq5cz01keOnMTIBbIHmxUXOBIKF/O6qSUV/vHw7\nik+QGqaSWNb/kWRN2G8Co0cZELip8HjiVONV2GUi/Y+M+Y98hEXev3O309QF\nPKdoEetWNRFWblz1d6SDs06H5QDTKYaCwTDWBMGcQRtK2SXkefZMkrz2SUxn\n7GrX\r\n=7Ev+\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-QDtxUQKQBLAfvXt1UcMYN3tEn85uAW4bV7epHZiNtq81tpiySCWhnx7vR3uHI5qmcEL1i0FZmgC0wD0BsUqKIw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5ewOT73R/QwvIFi3qpXm7oGsESufAvOnD2VV/Iy+szgIgQblHwcmYdbGNmeAHS0MEnT3IhvAEbKdZ+g4p+98qwJE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e18e8a8b_1525983441058_0.9938186906869271"},"_hasShrinkwrap":false},"1.3.0-alpha.4b8a1066":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.4b8a1066","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4b8a1066","@crave/farmblocks-hoc-input":"^2.3.0-alpha.4b8a1066","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4b8a1066"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.4b8a1066","dist":{"shasum":"2182f204211bcf259ea628b653245f0af17d352f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.4b8a1066.tgz","fileCount":13,"unpackedSize":25112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9QrMCRA9TVsSAnZWagAAlAIQAJmg62AJerBKAuPJ3NDl\nXC3iE/Btct0/vr8ogZGvRtxBipA7JEu0Fq+33GS1NhAYW3qfP2YzbxpnzSSH\nra5mSrRaWZ08fPU/DuuBaILfg/T4833tP8nMhIA8J44WB0NtoKPKFQVu/VxO\nIhLWxosRmk6uI/VGK1wXIn2TuDyEXlqK6sS8HAQHfT1ir4CwrVZWOg1PVheZ\nV1vXC6aCpUOsA42l86r30gYMVfUxf4ATfKVY3jE9QpLlCUjgsFl9Q+AoDeVJ\naA4RMYcAE4G3YVuNI4jAsryPJwhLTr3LFu7im3VAqYZh0hUSkfnma63P3f3O\n3yxaq+e7NwV7qRgrLgXzEsiIDo/Niw8EeWb2MvDoCEQGLfkp9N2DCkzwIryb\ni1WdrGzTos7D3dvmXXmEcJyfOSO2dot5jUOlmn2fFWjBTds3ERdPLNTkXogH\nRRU44HLKbP05g0WK0mRcqhubngCsPBsq9JyxO1yb8GOvWyb+t1x/s3lGmpB9\nGZ3StFQzivON9UT3NDE+ZttBUAtbcQdckSAWGqlg9+NAtLFV29qx1nxmr9+z\nlDd9dQHjQarBtNlrrwNAJgNxN5QxuOa61V3cGPmJmEcbcJ9MKhkqxnbLoeIo\nDSpbIiJv9Kq5OIAIuWH/rrjvODa6leToj09Mo7kg/nqjg7xnm6QQH7rG+mwQ\nFPNb\r\n=ylO8\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-7FXL/XTn8WwRnnlNRQybEMPyOqALthGr4lCUzgDOMY+l+rJICr7fDRONvI1CpWylfqE0wdwj9dhVPIYCF8Z1oQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHi3co4vEc2zsCeZtdFA+ZoAnJT/6mORNVLhauFbcH+3AiAHNfXTTlrb2J6rATDuQ/lXruz7i0OBAh2FAdv6luBGzA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.4b8a1066_1526008523874_0.42653016733598137"},"_hasShrinkwrap":false},"1.3.0-alpha.1864d583":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1864d583","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1864d583","@crave/farmblocks-hoc-input":"^2.3.0-alpha.1864d583","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1864d583"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1864d583","dist":{"shasum":"1560e7a1714f505b54802260ad120386156ab263","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1864d583.tgz","fileCount":13,"unpackedSize":25112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9bAjCRA9TVsSAnZWagAAeTgP/Rw82HLuhDb1by1Y3RF4\nmOFeiY1slGGeeX6U4ATOP70ggAJZtdKxaGvoF89mHFZUerCU9jTn2nOk0Tv8\n3Lhd3KE3Q9XKu5r1r7C3Wp/9AmCWCCOJmUcE2dUFoCn8dqV629+6d9HXcjKC\nt1y5DR6wOhCshhmJClswkeJA+dYmkc0jwTzPMtTruR4BzuwVjPfccnDUCUG0\nN39pOtZdbpzp0h/HILRta633J1b8ctikcaM6n4okudcSN39o56A7hwII0h/e\n8RhT16jWA5Vzg37KMeW39j5Cprzzx/jD5wb3zUMYHxdNg0NeaxQV9Qq9R0fm\nHuO2XQHiTOY/bzJuYy6yq+erbS7ZZ2uNHV29eFgsEsZjHplc7zODOYdSGJQh\ngw/ftkAIEo0yzK2Ft/nCYsoMZs3oPDXcDSvRLSAP8GhTd2PTdS1+TZ6A+ju4\njGBklvcyVRZMQ7gmP9WvaZVHSEg4qX7ck+DR9TrImykq6h3dGMwl+6zOdwC4\nwJUAYZ0yyi1VQ7g7ByB0BV7pDL7wCeTBFOzzONFHwk4RJ1yU9bfZ+WGmjqjP\nthD0fn7PQABqK/vUq3Zyv2niDQi7QEQHbc85TGabWgV6oBHCLR2b+l93Vd5u\n035NldZ4q4wm3SVg4oZ/ivRL8smvNYXNsSMkmLjsRB0JXPyyKRQVFfh4Tvhi\nj7P9\r\n=uEFJ\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-s/Iq/PpL/zazCLVun1pjtsPj0oin4dzLhQCIuz0v9IiZqeldM0VsTloO6iJDe9XtSB6/HFJBFK6G+7zLoYBfrg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDA83iFtXp3uO3D4xew28SrK9SMxshFwQwrL8LVH17P7AiBHm8fNnPY6K0PekwX/R2yXOE1R1CTYtpUUhlgjC4u1oQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1864d583_1526050851478_0.5928098369085673"},"_hasShrinkwrap":false},"1.3.0-alpha.94b0e8c4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.94b0e8c4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.94b0e8c4","@crave/farmblocks-hoc-input":"^2.3.0-alpha.94b0e8c4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.94b0e8c4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.94b0e8c4","dist":{"shasum":"c66aedb556f3d23aa7483e626f632ee80a1a26a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.94b0e8c4.tgz","fileCount":13,"unpackedSize":25112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9c/bCRA9TVsSAnZWagAA7ncQAKRpo7X4UUF1inUzCPJB\nz7WFw2PDoqVMvy3pII+J74QXg0sTxl9eFgYT/aSKLtiwKIlAUUQViwOxHE+S\nyj2Va3JD0ofc/4pkqIlYllrNCvdXrUC6NyZMCIPMmFLJV6thEiw6Gv0nZZ2C\n45gTf9/+RJpmF/YtBeFGuC/As4u4sH7JuAGyscIpIE1uTugaYUj6Fa2B5R03\nVhQdzCXCDegHNcNi9jciSiSinPoOccww9YiqUwXolxhelnlwVTh2An5w+HFn\nS/Ixl80cXOXBqgYgYo+k6ddCSOOdJE96bMjBH7hTmKXnvL1KACXFTz4twSRr\nSHHXmyfUO0e8fdJHRk9OmtS2ew5f3E2si7dQTlEgCbgvpWwzSjuY6JqiVTy/\nkBOdCwR4wdlhwLnDlOqs6ky+naLsNH/JIY7nyPB4XEoUamqrjwCZDkSWUfAm\n/1CIJlbgiT1JWsBLtU/w5qnXJd+XQxS6tI6t2RIh2haNeM42ArLP2WB8r4hc\nusE8unvzsfgPeE8TW8M/uezKRIfHeUemr7k01+/a0qA+OJqnEEbYQxBdSZSD\nZ0OSyExpJh5tI6tX0nmJ1vEW31ZAFBVVr3Wf3ja4u94aZvACZmMbxhkcXPs7\n+qnntMUnavQV96Hn4ovAoCE3GDiZT3b+eXJ+2xPeBg/uP0tyk2QXl6twHrST\nSbK3\r\n=IqRm\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-poDHIJ0QRG6RyfNYgHF3jgUmDBAHU2TjyIsT3xCKpFtGwjnndhl+O5ba7vjKu/Xvn25TEMAyoa/TVLE0ZotSqw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGda3qd7CzMJZA25sx3K93JGe6jciIFfHb++9oi/mQ3sAiAuHKO9CoUR1wd2NcVBiouwKyXyvNA9HIxh1ZmPOiOrIA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.94b0e8c4_1526058971036_0.6170499966693099"},"_hasShrinkwrap":false},"1.3.0-alpha.dc0d3bff":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.dc0d3bff","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dc0d3bff","@crave/farmblocks-hoc-input":"^2.2.0-alpha.dc0d3bff","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.dc0d3bff"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.dc0d3bff","dist":{"shasum":"1b39b58346bbfbce65bd2413556d20fca7d7496a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.dc0d3bff.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9eV5CRA9TVsSAnZWagAAbf4P/irbzVyF+nr2r6mhG1fC\niNLtYjGunPkby5nCiqIznlG7/87w7o2q6a7vnqhAdajI1BXr9jKsCNxwQw6L\nhwVS2QTRA2G8H1XvywXouh8USIAHeABek9gzM/kZYWbiQ+HBrgLxK39Cq/0z\nn4VsNJxq/efPCBddFblRNLpfTvTjh50gkTdzXPM45kOdL/Ri3aCxuQsfefgj\nWA4wnAu+ueSluQjkkWVc+0RqtnMKBEvPShP9DE/OgFxZB/+0qjaLxfabCweI\nuTIBvesbnKgCmSW9H6ayoHNRcA/xFSCOiY5DoT1KXwKzWaKRgvCHtq5fVhz4\nipmZF4n3pXI3j12BjnDDVj88F5X0zdfLPixYP9GPr3TcS3QyYTeRZVHCLOdN\nk+0FdURXiymGap7D2437kM2rO2G5UCtm1SdRl1xwcHBdYXh8RGm+7cp+2tkp\noYO3sfOv22TSbjjUuA1qweKZG+gwAP+xitW94na/66W6KjvyZYJyP0tXxBr+\nRDXNnLJ85PffgtPJB/qLABR+KarBVeuDYamj8UpPXD6LdG57dU28JOsF+oV0\nhJVS/CxB548LRBam7sGOEOawm/zMvurueE4/Ckjh/GZrcWvuBQqHzyNFfnsb\nyROOCpdrLnXWVfC+pRfmyy0FWAp2McXSHFme3y90653DS5N09PHKsXb3D4RB\naKZI\r\n=Q9KJ\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-VGz+DqvVUBfAhKk8HLAgvh/w0G6opPbVIaGJuHFlN10VJ/nEmkUZumelwMDGHfSmSZuwWJfN4lYXGsgCLOLa4Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIExYQaqNok2Ez4JYGWzyEQM0Bih8kEaDdmGWasM43pVrAiAORfczekovASJjYTyw1XgrnlN2Vq+94sB8eCTdCwNFQw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.dc0d3bff_1526064505112_0.8647054834117109"},"_hasShrinkwrap":false},"1.3.0-alpha.c727698d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c727698d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c727698d","@crave/farmblocks-hoc-input":"^2.2.0-alpha.c727698d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c727698d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c727698d","dist":{"shasum":"fc565a0b9ca36470129fa6a17c4dedae57d428aa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c727698d.tgz","fileCount":13,"unpackedSize":24632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9em3CRA9TVsSAnZWagAASCUP/0lZwc/vBRpyWhl3F2s2\nmw7j0SStwYyJ/L3YeHjT+kDl59vhWRMbiubiEJKCLwP3soEFLoO9CXtghR2E\nDGkKyafDF4WPiSZLoshX0C+c7i7CcoW/bgWBy0BWqpIYgAjY5O8oqH3Ek58C\nl7LUFqIwX+WNYA7rx0PFy3XcMqMUdBoTxz2y96ACWQ92YyaQNRqTVAu8iYx/\nYqx4xxhtzjMKRRyxvg9jPrc0TJhKUFI1vZkIbv5CC1sk2HqkvzRmUzjICd9O\nSA+3b7BR3F+7PrXpX8jcsOSmmyvYLDrZs0orn+pe2fWLiChrwVMXVY3SecGu\n7ob3b2qdFEwuT6vDCzdUzUaSJ3O289Coq6YTO3rGz6nVbQyQfW/+kDp2xmRE\nQsMwIiXRFDQbnVQf85KwmrYLtTNSKRsvE/neZiVBH6MUzngpYo1qVVYGY6J5\nw84pYg/rrTjF8VdLwH2aXmWy887AXIIxBmH8/DnKPbEwEqS3XfJ3TJovJEWv\n2U/oN2XdcJca3oJ3PUf37vZMAmN+xjD7kvUVw5pWu5C8Wd7NHlknWmV1YAZk\nWt8EbrEhHmnmGvKzAA/DX9YLLswf2ljioV/RxgKuInPpztwIA2dqrZdRmwRi\nRgoZgsrE+aPq6fF7OarIAopwt2wFaOAID1veYiPSmvxZDw2ubn5ybZHv1rbV\nmWq7\r\n=Y4kZ\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-mrnXFGLa8bEA6ATHOQSbRQQ901sXnT2Uc2BXZ6n2LMS98KbcPtmQ02n4uI2rkhpq/kDOnOP9hIB2eoWQ5WGQ3g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUR0i9qUYmJYVI3rMYLS62a6uhTI0UhxT4yOuy5yabuAIhALDO56QgWu4eLSd77aRdKGk0ukHk60/Idex37rcoLte+"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c727698d_1526065591468_0.07707731258310413"},"_hasShrinkwrap":false},"1.3.0-alpha.5219502d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.5219502d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5219502d","@crave/farmblocks-hoc-input":"^2.3.0-alpha.5219502d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5219502d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.5219502d","dist":{"shasum":"fd4a3e931623581af0e7285b0c57f5fb4d97373f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.5219502d.tgz","fileCount":13,"unpackedSize":25112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa9ewhCRA9TVsSAnZWagAA8sEP/0ZPwfr1yadE++TGnvxc\nFHYzz+v31QoZ3N0jH+bFIeVDvMKySJwZCtTI+GGiyF3riUb7/qolDP+m2eSO\nhOURtJYrtPm5zb7NgNQ4IflUsAxamtDR8dLW5dTEgCTgGPdX0Ghu9NzJ0JkZ\nvBjJiYyZkpRY+RkD0oCkGIpuHB5sqNLHi1YFYeXyA5pzv/CD1IdQ5ITdGSDX\n++h2KFhUlMC1ADD1XC7bEhjYsFETMWwfo1m+TbcoONeo430oRcLtO0oHfB6w\nBlaVIhzygJH3gpAxm/gejLnoEZ5hgk+pTcB8FzlLW31hmbAIu+oyhM3GWvDP\nZ5iD8mx7JSJSaZrOReH0muHzwG6gAkMoZ2ihkvpos9wjT+yp9/zo7eaSyd/M\n5jAjdh8xKoJlVHCZbl7yDlsk0KTtbaQuCLashG+br0QWqACkX0MykLzpHDHP\nVkWI9W7MC2SaqtX3mQ55dAWHiGbMNHB0wcaNPpof9jwacMsHNexGZDQw7NGa\n7WSHzPJYKIdwXfOHVBfefbSK5AsrPK19I0B5LN0qVkm/SR8MqZ8jFZnyI4e3\nzInzpTCihCWCHtqVYTTMvX+IY8p8rL4fG+RBSFTL5bkRpzyUc3VGy67Pyzzp\nW2Z/04vqcTH5ICKI4Z4iQiOtlxCNNeV4tv5fWouDcf6q3PHOucFW0XOSXI46\nKP9m\r\n=12lS\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-p8dFDQXPCPLygRjfn21YZ0P9cCGJG8ZlTqlgXxZpow5ra53vEuhM1UGZ8HPUQToZk4SL5d+8mELnHD9yiVr6aw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDAjvD/2tlBJfyIe/i9vETOpBnmlMVasnksA9jic9vVOwIgPchYhf/v5CWtXwm+f1JF7oIKewRXTcFhmfZLeJGnlUM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.5219502d_1526066208769_0.8907721608625134"},"_hasShrinkwrap":false},"1.3.0-alpha.79a9202f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.79a9202f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.79a9202f","@crave/farmblocks-hoc-input":"^2.3.0-alpha.79a9202f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.79a9202f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.79a9202f","dist":{"shasum":"7e505d036ab1ff3440d1eff7e6ee4e45d7ac7e35","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.79a9202f.tgz","fileCount":13,"unpackedSize":25112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+YqlCRA9TVsSAnZWagAAlBQP/2rZd2oaFX+Zvn+B9Yy8\nWwi6mLDjoI5I6uO2OrfTWczexojwdWQfsVc9PvTG10nLwL3X67V5DLutUAee\n3Qkjb0AUi4WvJCAZd+s7C7ax+CiESv3UMe+fWD9mThogr04CibPFMKYfStr3\n9TsV9VD17vhdPehdQqj5AmdQa4CwTSvIYgDD5CEQmV4qswieiGkb3m39sTS3\n5SXR2Otffn50q4KVzj6P5uf0NmpCNjzpr6fXryKtNK+tVA33Bq7+Y+s6oKG/\n7gxxKxu5gkI+d75oahHb1x/z5Voz4dyfvt2O1l7UcAcyl43M/5XYHWP0HeGF\nSgYPCZzW5NtL7NnZUWDHjsKRbMBfk6xQ4q88sizPXEZBcCwKszYZRS/TtTd2\n347LzaP0YfRcH7EeaYwL2ycqvNhhPs9LHSJA9AntBnK59u5YEzi1LFLbVo5+\n9jNbcjMHK2SIycBLfynEA/U9nrzfqWwWgqfBIF3kAS85okxobz6B7NowumSB\nB5m/3MkgAKiV87eQEruSDksRlRAuJjD8Wv1pFVzNUoAkWA5ujU21pAehkb7l\nWAtPiZDoi2mZsxVgMgwGi79xey/3KWu0e/a/diBxnadj/20p8gODsEucK15E\nm90IgmSI8IkL98vZ5pa+roLhA6qLk054qfsbgSn4FntdmCj7I3mtgC5RDIjr\n3XRD\r\n=CjwQ\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-8hpehzsAstrGI6daUzpzPuMhdhosKNqQWoAeqejP2NiM5/XvUxMdga7lSPB0E1II0JaC4/2tOEyCQYcLzfnGng==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICbsf6zGH8z5OYFam9chZv+b7Prw9Fp4Zx/awt7ZsmFIAiBHsDI2Q7jSgL7G52E2DeedKVHW5T9iqUYuFB+KmrFjEA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.79a9202f_1526303397244_0.19985666760770227"},"_hasShrinkwrap":false},"1.3.0-alpha.a240bc7c":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.a240bc7c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a240bc7c","@crave/farmblocks-hoc-input":"^2.3.0-alpha.a240bc7c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a240bc7c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.a240bc7c","dist":{"shasum":"799c0e9150b46aa6e7ee814b56bad8e96f96535f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.a240bc7c.tgz","fileCount":13,"unpackedSize":25112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+cDrCRA9TVsSAnZWagAAZk0P/RwwgkMEB/EFI2EYiiwo\nEb3tImxEq0wrBu8U3eRWebGLnx2NafxeYl+8fIDYqg9mP+lVNHGvZkoye2tV\n9pew5JhArhqPFvYK+4D/d2uPgsccnHSKSxInWC9gSD6AOIUygPwFKEZUf2L4\nBiYEMqtgajpngf+5NJ/mIHHZ5g/lPzca3nhlJr9XjjOteU4owm3gNqM2TJLQ\nj0t2YFzzjKn5iytUqnTvpiK2qZl+tHySgyCCBm6LWj1b3KET9E3B3cZTXSCT\n9dqeddiWupjdvo10P3f8wsK8u+eY1R62EoNN/ywWeJcSMJtlPf9/fwA7e35m\ny7ZEaIOnKs4j1BBAYuwAmVc6OwfThOUkNyau/OdDQctgGrtLnC04t9qz7gKv\nPD4rPJin9YdQyuiiY2zDXIbkcv+hHijBSB1tUcR/cVtYMpBDh3Vr1wMjEdrW\noEWi189zwp65Un98w0YMVqnQuj2PHbyidkexNRlzFcldbHRSq2DpsJMf+xDQ\n2XZO6AgXv4ISHWwLz4nR3qs3AJYW2H2rsxJrnVoCt8iKvklbUXeLsX3swxY5\nC5vLa/7gliE7VwQwqw6+PXrBnyHHa96bQIFHi/ffAImzF96wcvxL6SNr101y\n9RaE9PWjNxakE2AJrzwW86OiQ/u6U2hltY2ara0TzTCyxVEqoG/QDkto4SRe\nzny2\r\n=S6Te\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-BNVrS46+3C438r7tiXqVUo9XOc9rs0Ng6owGGrvnj48lwm3s13SemKdH6yBZIF9gR/z88Ubd7dwZ9JG0bMNrfw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCNTEitrrdmmIXpNX5/HdztpmZ5KRoR9DozWQW7msizGgIgftuH4pCJ3t5STQTLbw4lG0Zhr6CYFKhnjeyjltZM448="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.a240bc7c_1526317291224_0.9204698726952563"},"_hasShrinkwrap":false},"1.2.10":{"name":"@crave/farmblocks-input-text","version":"1.2.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.3.0","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.10","dist":{"shasum":"f0cbbc209c108cc2fc5d7c59b7df8ec489ec59d7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.10.tgz","fileCount":13,"unpackedSize":25012,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+cVTCRA9TVsSAnZWagAA8gEP/ioVIylelp+NJ6YHTOUK\nzewCBfRytngD8BN4YZKMNFXWHy4hBFSFJwrrZUm0AotyqcMY1PDilY2/puqf\nN+CpvksvjzxxYcDyNJPmaFcXpD8gOl83SLDO1Pf1FFlc9Ca/FEDT8zlDn/U9\n0JcbZx2yIrCCLbZCtHJKxc+pcI0z7WmU27EOgBxIqNrBd/F/4IXziBMqGaVb\n4+v/Tp2g/SZ7LC3Yuj/32pZM1AywhVnDvyM36ixCE6V6MISW4CYJSStOPJ2a\nYnFl52bSoA5HBjJa27Au792FlxzxCDflhxTtx/w5Xhu6W17Uc4R69Lv8v4vI\nqRCN8Q2Z0Il2C+gKvk7AsYhH08FtpiHJoIDiL5bmI3o+okc9G4HpKc1C8yTq\ngobOv+KYMlwvZfn+UKw5DQBmEWAUGo3HBrwqDf8+xRGUAbZgTPulHpPiaqWu\nI6iN3usoQ2BwRAyWLb5nZ9kLueFsjsc2ziZvUdMcMyDl2k5RdSDRwAlzV6vl\nG0EwKoCHE5fB6PEQ2H/s5xdJGUqsuizM6XGZHuKt/3Kieh62sAwDFJgRrp30\nMxkR4SxHYU62cOvOCXE3ozwTZcGjjCZHpdx/b21pqlQS0JgPQbDCfvqa8eJX\nTCpyLED6eY3ZefwbkVmO6/rWUdI8fDbcZWhdQwxVowvThbrli9uz0V7RQ8y2\nNQB7\r\n=dgEb\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-F7K7QKcV1W287RMbX0F+JaK3CtbV6Xhe3uelPOGlc9fydivMdWPao/VUe6bSUvL7Em8EIhgedr4O+0hJ6SUzXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCrZxKV2AbBHYdRmHFlCihTuOfCjpWLzh737jn+5VvyDQIgDJx53RJ0tATcLMlNc61XpwmRs1W8CFJdOKSeKePrs9U="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.10_1526318419662_0.6393011675105462"},"_hasShrinkwrap":false},"1.3.0-alpha.fe1c30e4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.fe1c30e4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fe1c30e4","@crave/farmblocks-hoc-input":"^2.4.0-alpha.fe1c30e4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.fe1c30e4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.fe1c30e4","dist":{"shasum":"2a47e6558eb2d3dd2f46ee32be2128bc4568e1c2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.fe1c30e4.tgz","fileCount":13,"unpackedSize":25356,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+uVFCRA9TVsSAnZWagAAUQsQAIDvg0WiPrCOMearkhwj\n28X9f9X++wKgshXQDw/1tiL/9n0bBfn5t5LRnn5xDX2cnrTS5A/wI66omPAO\nbEKm65yfElKu2ZXn6SaKYRKVbXRY6sjzJZs2DTxYHW/uF+wlF94ux46t/kCq\nlw65Q3UnxUlQLMJTnfk4OD+FE0eFYsBarSZYg5A0kY1m3NE5574Ku8o6B7wu\nZCwb8y4tAd74HRadcNyOOcJirb12mYamICA4S3Y91+EvrSmySOSkOxnNlbu+\nfSdpgGGGBvpB4PqnhDNiVKpFjLFS4KgFCKUxsN6oMHOlgTFNLR0Qj9banpTe\n8HO0Odp1MrxAchPM9bJatgPRZsAdoFeoCm7qetTk7f0MO7NPgvu5t7bn5299\ncy/MdzKlnVics9GsT2jKCRoi39Sa/zbBlyi8h+l3Gw3wabQrBJ55PlQ4bT+E\nGqEnqyUiyPbwSfh/2K4F8m8zh5w3ZABwvwRz0PMJFY+D0rT4qOzle7bYVlBB\n/rwG2L0Rb4Xzxx2XteQ0h72LR5vqxrm7zL9fswYjtocBynFxFpS2A7P7V1cS\nmiwibKGiGGxKSRAaaNGa6U5pnAeEyFwPII7Tcxr/kr4n/JbpJkW4wOSUrxiv\nWc+fZb8vKT26xR8fvMsZcWZZfVCxGm+xnWQbZ2KWcWabiLgPnnfQQWXjwM/V\n8BEh\r\n=tEY9\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-q/I+jiDz8e4fW1FEzHATqYldUU0Lvf1HZA4BTee4U6m96ZcSFSDEctKOwJlE27w6kLymPEmDes1PqSqOym/cdQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDxNYEkvRt+EpOMo2dmRBWQfLeXtVQSKOo3ceHoXS0lzQIhAOx5sVBlL/YgR+hbUHy8kvPGlRx305HBAVhRKCvi0/4b"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.fe1c30e4_1526392132960_0.7754490970000196"},"_hasShrinkwrap":false},"1.2.11":{"name":"@crave/farmblocks-input-text","version":"1.2.11","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.4.0","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.11","dist":{"shasum":"1a5413454a5f8ce28842d574d14fa0079f48ddd5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.11.tgz","fileCount":13,"unpackedSize":25256,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+uftCRA9TVsSAnZWagAA3E4QAJpqIvnu8Swdsz/CEeBb\nA0FLPSJO0kG/xElonOwDuhyek66FJCQVmJSn1r5Ie5LZVYLFR3mLedRiEv+S\nM4RBGrhKVAkrm04AG45hd0sjBuaOegTL8Bfhq+EVnUy14wCTaBscGDHwRU6m\n3wLnQou9e3dHve6atk0xnVxAhdyV/Lhio3ZcaleyJHhoYhD4SiGEIo51reX0\nCdoBDHHGQBWx8PosQ3sHZFgDu0tEWmWqaUVpEVwRZNO1J61JBnzI1fxUF1g9\nawCRJBl+Mq2jhhVksN0k+aCKuiiYJM+x+2zy8L72NX3jQk62yp2EPW6099K9\na8RUNVc6t1DTd1mSQd5DsgL3aa1jGelUj+gX9qtwcX9RW1qeVOez47rB1w1l\nFVga9waGKsREgvbARPSki8grk4Fvo55KAIebCewBye3DIQtxDOw9dKMheM27\nzTkd3DjXzyx1Vvg8Jk3AN2LiEM5m6HOrR9vpuL2D2bF0M/+rtDvHYyMNqArv\nNqr/hBnkSSn938SyOEYJmMRA84BaJf5WUZc/uAzu6E2wul4KPFwWe4Cm5cMm\ndkrqv4YdAQEAoCxnTHgvYhj9JHxVwnpQ1Umi5LvgMsUbxizzg7uMXyb+A2pb\nrxBchmsHR6uVWenWsg45Sc068diDNcGv7eeojzTQj1gMhsv/zyu4HgsShJ/y\nu+cs\r\n=kuFY\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-FNGa0ga0VpNjcQR7UfRT9VktgFzkMukgNT4LjuXel3vyjdGYqaDwBprydIfDDduuMv8Jz7L1XCuxlWy9WrOkXg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIALNMXFImJX+JYGaWyHh/TU2zYc89mtLl8fUXth+ULiAAiEAphLhu+eQjEeIA8dImFkhq47xnn7gXRqRKK+8Wr532jo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.11_1526392813065_0.03034687464064567"},"_hasShrinkwrap":false},"1.3.0-alpha.ebdff3b6":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ebdff3b6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ebdff3b6","@crave/farmblocks-hoc-input":"^2.4.0-alpha.ebdff3b6","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ebdff3b6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ebdff3b6","dist":{"shasum":"1be1126fa57717f73ebdc92ea1514443a3f8c68b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ebdff3b6.tgz","fileCount":13,"unpackedSize":25356,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+vUgCRA9TVsSAnZWagAAVQcP/jE3gaFhFm1rWv4kVTWS\nIckBim7Fh3VBNVE0wxzVcM9poJUi45HtnZ/d2/pCmWNJoFSreT2aQ/5SQVD/\nGHGrd3M63pRq0yF5M7VMhXg3XSMXFlrtwX1IkktVNgdLri0CMjW+8q1tjc7/\nLd8H/OwklgVyBm6oGTctJzwIBHkwz0t7Z1XWiZQzbSg5UKqklgv7jt+2hyXG\njgEAaWsJ7/l33O5fqqdxwl6cxmGg05fDYHp2/X6g7Nw75tIQC1+Ff7lpQp7F\n87x/E/zhbKgL7uLrB5NL3c2R9MWPuVqtLkd2oD3mMROk7/pfxPp88lHCWzGV\nI63K+uiO9JXv+6aztJlpdwFYeRkayrUe7zutKBNoI8stJHaYlWHC6ecksWAa\nki6c3spF83M9aK4ip++9NdUJD26/2ZR3mhesxToVjJOiPFppRkr0G1Jb47oV\nOdysnZRDJhb4W+aq2TgNrlUjQJ4CmVgY6RPR/8Zex/+2BqsUsxdGQLc4dqik\nP59wsbmQt8hGAhkYnc9mWeAhi7vcEvU6XygyIYh2KJTnPGB2dHfOVO2B7DlA\nq1yUMSV//RJfjWgB/iIbW4Z/PgLf3I/y9XOch4eeS43pA9EsGtS+OIFaQ3Oy\nUq3rhvlL2t3/TAKtu5SwyOI/0NRc9TBZ62u0LOLORxJ+poxPey5eks/LCN7e\nQq7h\r\n=7Dez\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-xusIVSk1W8aPHBzLMsoi1weCq7s6jWRPVfoYdXTcyrW96jQObG8j/GPpHHW+G72gCtxqrK2GizyHiOrQT60dAg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6zJsgBx02CWFKqZfTeh9fdfuznASv/8eHZ/zMPeMr/QIgeFmVxlZNhF4KFEuoT6fvFf2rTND0dxIztiQud8iN2mE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ebdff3b6_1526396191736_0.4814468386652966"},"_hasShrinkwrap":false},"1.3.0-alpha.05c39b0b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.05c39b0b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.05c39b0b","@crave/farmblocks-hoc-input":"^2.5.0-alpha.05c39b0b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.05c39b0b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.05c39b0b","dist":{"shasum":"0f7eed8a47e18c05eb71453ac997dd11a03a522b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.05c39b0b.tgz","fileCount":13,"unpackedSize":25600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+vnbCRA9TVsSAnZWagAA36AP/iNglZ6O9wxvywTv87ZU\nPpYRKid6rSAqPhdf7+lVYzqoWSbYpyGRDq6ubt6wHZNcKawpAUo6VhyBXZJZ\nlQLq26aTpOOlYyi6Rzo3mUijHP7gbbmF1wtHRLzuZcF+EaSAdnDhF/cOUm5j\nU3kJDCFRGIMsPz+V8uAT/uTLRg4dSMR/jeK5nHnOdqCU8zX0wnX9+90UMCVg\n/Rz8HP0jZq1d6tGzDCtoGfUnwxUXO/lf+RTuVlpAWtjZlhzUSBLKlHhYzF13\nb6fYWWMiPKvh8DCKafYCkzWeL5NQhjiPYg5CLrLxTfA0EztAfrZXsbhXFC1g\nvFDHEr8tKH1CHDbdjNMfY5T1tp+yXD51Nredy0bJt0Z51Ey7NcTtSvsC8M+G\nrDU++XTFfxcnB1v5G10SL+I46uxAgwZs/k4mKk+1klpjcHWL2+KkOVFuZXHI\nMEK23h5GVYVq/guOFrCspcf4IUUOAkLzOQsbi2wBXQWeQEG5h80QR+8JuW9I\nXxGlL00GMkTfiPsaIj+cbZACMa40c3ugaMCKcPMHZWKbjNbivt9UOkdolCby\nbIPdPx7eOMfzuACHfFT/EQRy2VkR4w/h6JIISCPlv9C2BCrq0IM/8LbFJYLn\nD9PeFV+QMoGD3uP6j9bWBkfOlQHb9RHvuKpmyNi8rLP2nH0nUhtwnmoeFQNb\nNj18\r\n=bYtS\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-nknZM1Bqsnk+n2vvyGbVE73hMsi9eGAtoToA/xbUpfYmnP6Rr4I0BbqXaUQz1vRO1YY0reDmfrQLhl2A+m7rRA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGRdQwhFtR03FjoSX+VZkm+MLg/6/qBmaIMrdYdOBWAwAiBSgWb7fAviK6ImDVz/HWUYP/slAbTdfQ+dfA1yjzgwQA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.05c39b0b_1526397403324_0.9214142596636647"},"_hasShrinkwrap":false},"1.3.0-alpha.283f3e57":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.283f3e57","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.283f3e57","@crave/farmblocks-hoc-input":"^2.5.0-alpha.283f3e57","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.283f3e57"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.283f3e57","dist":{"shasum":"9bfa861da198e13bf27aa65cc9d45d8df24e9ad4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.283f3e57.tgz","fileCount":13,"unpackedSize":25600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+w3FCRA9TVsSAnZWagAAatEP/1wj96doGIcZXmaL2ms4\nAqrSlzSmB7VzPinUPYKo34mBCUmC4mdlMhr9v6CHmP4Lvxt7n0RKElXAqwh3\n/biwFbTIq9QyWbp6lwl22cV9A3QrZrQ9Ro2VbeYvwt4iq2v4OF88O9/JOKZe\nss4SM19inm7wCVjTUJBIuWC4P/0NsOFcx2BlvwS8AxngQoXj0/P8+KqiFF0j\nPdEZ0zIsBGgiD9VikEEVCHZdr+aDTSdj+MWMtUPnX1gHtIFOrfc7CcElYx26\nuuUM78d9LVFssc5iRJarh/X0VDCeAOMzZ5R2yLFxQ7/PCOmGRXBvDFEqJ5mJ\nmTGq8capPi8uBQ8YDSmO9gtcTTUdg7xUNlFGMhv95VJTtMv+FsPbKqrMhGPf\nnVz61bA0UmN5beYvpfmx54k+oaVa0KoONXeMzg37f5M0RqUljCmdzafj7Utu\nb3AnV3Y7WaanRx8lRXAjjGHxZsqDl0C9OAlMZ/9xKa0mV9VHg6D05NdfXTN4\nuKF2cXrIeRdfbCiTzz+pHkt0r51fYMfkuyGupv8oa4+BjCpEAtKMZ0uZhg14\nBbPb9gHXNQ5/INcovZCcBviMIBkdRQGleTNcu3zq7Sy1KQzqfy5W80z9iL5e\nrqapxpd4VBTnUBS7S08AeCIik9pIoONGDWcpe14pKAWEq6Hwui/39zdXxlee\n+OHF\r\n=vGrw\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-CNi9aczHhKQ3aSFRWF/7R8kfhl/vsdonSMOXOJgxQJKMTe1lycLKQgH73kDjSX9kTqLyuFcVbCLc50SJWQFUfA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDeeS/bWkCp7DWdyZ+MFkTddKcW2dOi+3mc0LpVRnHJxAiBXlEtXNzP+RJJ1RKFIzj8jEfyJHteAEYXz0Y8inEwugg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.283f3e57_1526402501465_0.008785255386210666"},"_hasShrinkwrap":false},"1.3.0-alpha.fbea593b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.fbea593b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fbea593b","@crave/farmblocks-hoc-input":"^2.5.0-alpha.fbea593b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.fbea593b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.fbea593b","dist":{"shasum":"c5768a5d6428e42f20207b45b7eb23aabf6eb74f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.fbea593b.tgz","fileCount":13,"unpackedSize":25600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+yuCCRA9TVsSAnZWagAALKkP/2hwaTziHeiwO71PQ6BK\n5ygajC7+Wgsbt8CwGdTlBD4uHjbWVZbf9Z0oSahaly/vlMBMjxqbi7FCQq0U\nnklSBjJPfrOt9dYqc5BMzZJ+3KNONYgtG10JdFqKLKRReUlBJpUAqPJ0nQMX\nlp+Jyot4r+cnnz4TbnZWnf2DLK+IS8H26OevWnsicpaJPpDY5SuFhzWSCbRd\nhEnHz3hr9FUJ3iHDTyY7lfXhB8XXOQ9yzIcXA5ERLx83exayCIZFClaQ+rz9\nWaxpkbD5oRMiMQdiCKb80u5CTfBXwpHFbgTTepXHohEvfKsSAx0WjzOZueMj\nNIokpmaJeYaO0vcE9zXDgIJV7Hjv9UDmRY8h/7icZb8MDl0I1LJX+rlAmZPw\nKHT5GG2v0Vh6tYlcKscoHzup6LZGmxZlAkvWDFeqf4szP7UzPKeziUu25/ym\nTBYL4szH9nNuCBQmufFd3VU544gr17aaDBgHtMqJ4dGPkIsknwqCZtSDR5YI\njfur66y57CZTfAfi///Wq+qflPSjCakLNwceChZCddURBbJHT/KAxi0OC6xA\nUV6OnoZ5DWoo988qbrE3/ho4OmPiAWXXxAzrTJy9jglwbrhDZ1ASI5xMW85b\ndjVsB7/pZc0PYygb1T6khEXVKyM+SxcKcPYPmr/kkeVPt0coM8AYGkM5MDHJ\nsIxi\r\n=Oa4b\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-kZZLD8mvQJHztKaOPor0uTsOdZ4aktYcZWtULDhLBc7JhS5zHF9ib9PR7XiP4YmAhnGgtiqFy4WxYQRLMkxvxg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGeEKbWTbJBNvMDB4o94MAIzK1aeLGraSgLG0ZRbjn5rAiEA565VcO1W1Gq6lYpXJxEMa7Fzf67OlfBIPTWJoE13kSA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.fbea593b_1526410114553_0.8937682940621459"},"_hasShrinkwrap":false},"1.3.0-alpha.665fb022":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.665fb022","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.665fb022","@crave/farmblocks-hoc-input":"^2.5.0-alpha.665fb022","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.665fb022"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.665fb022","dist":{"shasum":"4941508ee55ebb468f764b1f5119f354e5645b14","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.665fb022.tgz","fileCount":13,"unpackedSize":25600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+z8bCRA9TVsSAnZWagAAfjAP/jUSzjvZaN2dav8XjNjl\nHsl5xwQl/TisY4NqVdNp6CVm6NfKRXSEd3sIvTeUrMg0l6znDMWFStgN4901\nNKvZeeSEOGBww3jxdB3h8J8MSwZRXzBd7WM8FKQMoU8aUS3pqHPbcAXxhEzJ\nLIC0EUY4MobOuUY99MgM6+oZC9yPCdjaMqRPcElEEWKsySMK8TpYuF/wl1z9\npH1i0tOnRiKgRqbDmHCm52ugIJTThVMeNbPRnwDP5O0u1KLWa10n/sFB6zeq\nj1OXCyKNHWhvdjk6pilUnrymKGEVmrNtSqqd5sWZ/KGlmHP5ePPqoFYeFxSW\nd3XfAJ+HFHxPxFJL+KsygYMvjfcqOR0xNjv+8flO2FhmNnlJ1dpdtkCZ1AJG\n8b/Gsqkph+/f0YL3uIMbCYsIOtWyKtGGgLiuBEhYsopboQ5YpKjmCzDxj/4X\nIv9+AFfDX8ohrD5tVLgtnOd9R+sIiiIEbQ51JFsGS5P5Du895SAsp16wKcgO\nUZOQ4xQuEfzeIXqoRPaal8zKXxHpFrA+h8lM3lnO8pm9YsJS9VUSysi8br6U\nyTzk3sB269OFqfgRD8ph7v5ySV2+gE5mDrFn8Z5/7ATQQKzoj1FvcE3Ek+iO\n6V/OZcAZaObFjglOekTCX+vtSTmeRYiUIGlscU6Y7gfqa/LyZerqB94qmVLy\nzzp4\r\n=dY8k\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-51wF/VZkFC8TGzMGl0L3yNfMBo4HvjsPpn39JMBBOpfN9gfW72v9bZ1NJAVzL5TVNNsPjBaT3wShrrVzpVQBlg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDf2A3u/atuvLqVeRrmKAtgOMELneyVK1zDN7AUaNnGnAIgd66sP0RGHgGLpxveeH28CmIe9D/dS7J1pvuUAJnDsTc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.665fb022_1526415131167_0.9585815552364652"},"_hasShrinkwrap":false},"1.3.0-alpha.d34e607e":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d34e607e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d34e607e","@crave/farmblocks-hoc-input":"^2.5.0-alpha.d34e607e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d34e607e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d34e607e","dist":{"shasum":"db62fc4c44c15553afe9b743ad8ef05daff94736","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d34e607e.tgz","fileCount":13,"unpackedSize":25600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/GSbCRA9TVsSAnZWagAAoRcP/jaVrrWJvVUhfKpYwFhc\nLWCfXrqhib64TWLldSaI0RMOMsMqvpuNTWO9VjHz0Bh1QKFEkDs/WdOCB4p4\ni/Xi9HOR2oj5Tll4AaykJxUDjBXRSqwbuITPGPchkai4XW0iJFv/6aQylyR+\n56ecbiLm+wekQ00InyvUzCTlAheHNSF7rR5mrxVjBo/rp3yS0GCaEj9Rmuwn\nv6u6pMiw4i8seXBWuVvG3Eo5S9rlAkUZO0vVHhhPJJvstzlKekNr3nSD92KN\nvb8e6tefWUzlt5gAUvM3SrRAWLHoCfcIIn9YeTTavVMPD2VyB+RUJI29jms6\nkNJPGJ8etbzJH8MQShissQbRWG53fKmTaiEdjiIDrvQwbYmPkvSEK73B5b1J\nz2eoQZDrFCasd+FsOkGXih/Gla8ARFPsvFFodZlqE4HtvT0lp7VRqZm70zTK\nmMeUVaGg8bHIknADyEyEF1W2Fhg/HnD5UB94DYDcY2is4bez9U0J5TYXBRoG\n5UeEwPUsPRjlk2Uh7cnV5m7HDz1juvIoS+z5tQkIjK+m8N264IHbA49nZ2J8\nkbq+VaBrsFBLf5KZNwDqOp7VIYVy3lllfKVMOud0z+amuXzeT0pZ1Q9v7SPU\n1t2hC5OOEE1BrGWwL2YGg3kUcwVRPl+xgiKxWzPkFOQpKstd+eS/hjVmPO4T\nvL2F\r\n=GiUf\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-0HQoEcAHIvNDMQ4hQ+xF8JnOjSOFf3K1IMdOFnOfzkvFvk9JN58k6QDszYyjnMyd7Fb3E/7jLJo6K/JePrqFCQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZA7svSl/AXM5U08eo98GbT3q+YjzXHIhe2oc+mtxfZgIhAJc2y/tWrLWU97R/GE06Bx1OMD3WenAj5PA01INfwI9z"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d34e607e_1526490266763_0.7524588730646757"},"_hasShrinkwrap":false},"1.2.12":{"name":"@crave/farmblocks-input-text","version":"1.2.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.4.1","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.12","dist":{"shasum":"cf7af095dd49b5b2af4d92ea53e1146ba254edeb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.12.tgz","fileCount":13,"unpackedSize":25500,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/HU7CRA9TVsSAnZWagAA/WMP/ijBi0BKfoVlFDn7aBUx\nPOqPUPV+FEX4Uv2pH/vdmEyp6uQCu+7+D3DxGu4qiP2N1WuDQkupg8Hzs0KW\n6ZKptwbffUhwuqLLxnWbSX1mS1j9w029e01P9bGYu4epLINA6N0V2C7m9oAs\nYj7ELAzNEZPjT6BKRt9PR7JNE+ylBrSzRWTIlbFFSzHYOG7kr4CKPGrj1V18\nnk/EdHgka2nI6oVBpx+0QepdzletHk1GL0HUR75Mo7bwJbscJ7LhAH33bZ4j\nVslW9xLB9AedEByaLIvCKCIfQNjs6Vzy3ah2hr+8XSQL3jDeuTPl2pNpnG9c\n7NJFaCejvgaBy5uT5pcQMEEO1UHv19tPPaV666aIWNgOXYC2L206muU07Klk\n9IVR5yXrKI702v9cKniBgR+u9ZdEIaiVEA0jMvrQ03kyM/PONyhRgzzvpP9M\n71d4XPmthi5l2BfSvFDU6ilAruf72JY4/lDvuST+DHtbXEljv0rLzTn8eXal\nf09mNGU0QKFNAzGGcYYKMYz829pcTmZhdNFT1/Cjta8D1dqGl/leRrzr9fr4\ncAiBhmZpj8KcGVC3GANhvwc9oJ+BljPE5gMNX6SoOeb6xCfUl9ipr65BBwPV\nd6zHiOhVFtFe0nTk1/gYzRncgDy/wF+Phjb45NHjiUlmO5XTb6JFhhFHTb7o\nIu5B\r\n=Q4T3\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-0NiybHCNYQ8HsEIQ4gkQo+PoMrTnb3gKve+YeTqAoWgoZO71IH/5t1foHPKfCOOBxcOGWV/gCoceEdVN4X0Hmw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDSfn/QQ5AYSf7Rr2Dp7cRw3NEtN+95GjEx6jOzQMSZVgIhAPGYZKaMY76lECIiza62L1DJSpIBdXYUCkdmEahNpBnr"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.12_1526494522865_0.43600889178941693"},"_hasShrinkwrap":false},"1.3.0-alpha.b21299eb":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b21299eb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b21299eb","@crave/farmblocks-hoc-input":"^2.5.0-alpha.b21299eb","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b21299eb"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b21299eb","dist":{"shasum":"06a514e81fe28b838ab7e99d1d2255bc837daf30","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b21299eb.tgz","fileCount":13,"unpackedSize":25600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/HbCCRA9TVsSAnZWagAAflgP/3AGRdhbcHstazrzZKlb\nVgb/sgJGyGE/FabqU+Cw3tHYZrnzOdPGohoP4BhEcZp0ugZrYtvyt1nSbIXu\nhA4oJhTf4Qm8IXyJx0CYteZXP6sLVwKV4qfDO++75atADoxlk9/iSEaAUlnY\nlBBe0SC7YOJoKP2qEmXDDXB0bciyGxDUUQVzRC6WJn14XOQA8nzWGSViHfb1\nNGUBb+TGMDjGsyqU1hxY2j7nSkopqoQJiE1X7LfCc2jYCJwUdg3kfl+3pRP7\n7MpmfvRQ13yl3DPGxutrIYrdaQqFVQMmiWWQarQOefyRK4BwGQ0H8+oHRm4P\npatwr3FRlk/wKf3p15DaAVtZ6c5wnj2N2cEEvIpemJ9ierrUiVncCl0QvNtm\n+343k7RqGTVjxuYko2zfnKJXeelXgvN95zIiI1YiX6xMkbuDV6WbujiUrt4s\nh1uNDyn2BlD7vNFO20jda0M/3vrzicpNcg4cJNPqgrexHbEmABgHMJ6l2zMu\nWSXJrV+/PXxlKFcW7IHpnzF6ZW9Is4fYRhp8I6d7xcjKOg/b36yJNWMSQj1E\ngIjpdVHQ69vrRXxCxhSUxEXdlGCpRmfElRx2J7pQXoIxHgrhZQtYBQQEAApS\nPFkYKSFzfPSNOZF4A5drAG1fNRaOrRVqgyQAmaV5xv2IPhiUDvyY3JLc2P2K\nCu3y\r\n=NbzG\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-1hp17GCa2NLRcIkQtxZoUQbcjwdCkFhMukbz9b3MO0+KfEKc0IsJZKL/TJw+qiDyNvemenbqxtpPMpUgx2O+zg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEnJwrAaoxyGsFobMYAJhyXl+wRWwE14mcMP4XNbLu0KAiBda9tFiDwP2Gjz/bEkEQvRbnJzGqly84QP0hKFw6P8JA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b21299eb_1526494913942_0.20755792790240357"},"_hasShrinkwrap":false},"1.3.0-alpha.27740892":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.27740892","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.27740892","@crave/farmblocks-hoc-input":"^2.5.0-alpha.27740892","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.27740892"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.27740892","dist":{"shasum":"a33a01ab97ca9b0f7c9d8e81258878742323671d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.27740892.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/eL/CRA9TVsSAnZWagAAY/sP/RohFPsZ5l7DNeU1Y/ul\nTSIbEpFUNeDl6zHbVjTH/Od6TB7YCpr79I//HzoMDkSMwSLZqnhj8TpypDaJ\neg0uFu+t4oDzGh23tlH6Ra7iLC9RLKh1tOTuvM9wvJ+SNueyWjCW03K4JJZu\ng2zmObo4W86FVlofdjdZ0H8MtSi5ZNY9gRGG3AV7tfr1jwdGLAuvgDIbuVdM\nPLwg4YaRSp98bVv74jZuy47I8Yhp0pXEWJqpOVxRDYnsFqRvkosVG2Sf1JDG\nqClMYEoUVsx573VnWGbqn+1KhowdAfvDLrOchyEpSVTU05SCol+5v/OVHYZ/\nO7F2+GehtEqItyRlays4k2B4gvYBC9Ijew3YKrIuBTpKg93dOlRdDph8UWL2\nHLNlQil11x47ZxI0ulzELLLNohqWZQqKiQxeAwxiQXcfR3qi+2/vZXevYsj+\nEfwIioc5f0ekzW9XeIDQbegqtwFsV8R3yiSKJJ8CP3voMGq0RzG/i6QwR87D\n+kyZ6JFpW7laURGS5aLgtEW/IKaisWGLVqFRzXhHjxRhF1FFXG/Uu+m+BrHz\n6CTIkIJfslIZii6wEdiyWSistcXyWLmArY4cVGHOWmuuHYpMBJnKQJRmCStV\nZjh5BvZRkGLR3nfcSjSmXZwJv6xHEy4tslQmPpB2XK5onz3T2wd99vl9khmx\n/Dh/\r\n=ABBg\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-Ef0147EFA9zir+IzYddMeZEIpW2+ghtH9lfyAl/IL7pDXQzc7kPl05bhaM0Mm21I+UL1D4lJyx9Ujgh7RD25iQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0WrMNmKkTPs1Iu0RykL97AQLSxC0Lt5ig9698jjcm3QIhAKvD8PLK1qoF7iWdQC+ELOXTDpxZYPt4r6app3+JqJFa"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.27740892_1526588159341_0.42070962560908387"},"_hasShrinkwrap":false},"1.3.0-alpha.f5f67192":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f5f67192","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f5f67192","@crave/farmblocks-hoc-input":"^2.4.0-alpha.f5f67192","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f5f67192"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f5f67192","dist":{"shasum":"fd88926d6832522734661a8511c815808d2cf5c2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f5f67192.tgz","fileCount":13,"unpackedSize":25356,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/q1XCRA9TVsSAnZWagAAZKcP+wXrTS+9KO68Ax/Wug9H\nFx1O/eBxGXc5dZQ0MQEPdbZEe3kksPkcHG0ggAjNtvnQOjVdooEIlNew0KCO\nf+Sb/sTTjtd677wFe+gydiSXgxKCNTtwJO19Z3LAR66WriNjy2WTbszdcEj/\nnQ0vJ18QHObpxSA7YRjIMjJXLcJIEvk5wJ2/3CUZkXlPBu4dT25f8wzC66NA\nMT80lR2Y798QX/ojExODTqQYRIiT2iCzx8wvOLhV4cviYRg7AZ+E2whvegSz\n0QNJNPOOxVqUt18CtZow/CGjhNgkjq0KnikKdnVGk5qfyAi838EmVCRNeDy/\nbzb4voGJ6YKU8o//9y4AflsB3lKIrN7jgkzkT83rRsGV3QYhxvzJ2OlfHWcG\nnimT+XH/46/BIE+k0zlHxw1g0L4VE+CDHuCvCwmvAAi6H32if7eZBai1ZUYI\nwQOjwMCoqFdSDbzrCYiHM3XAdZt/JinU9eYDMisntycOeBv92JXkjzJ1RrJC\nFYuY/YCpGr9SbwEHfPbUTIfUXrMhEY9ajgyx5ARnlJh6FmAt5yXiUbUi4H3a\nwUJJpJJcKzxgzJyj2f0MFVnuq+tVt8n7Y2pQC4Xj+sRzPuJdAhCg83Qbpdin\nqq8oFO3s0VXFI/MbK+d6fjzfem5u/qDoBPFpEh0r7aHt2eQE3VtCKRRqrUS6\nGWVX\r\n=kPwI\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-PVqMIg7ARrjZKrNE/6EaeKRYD9dQVY/FB9hM776Eu+1Ip8tlPJDnWUXDlJTFND31Dzn4G+DpOskicmoUgXkXFw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDEM34nd9ZyWv3BLNg9nqGP22VVAto4ZphccLxqnl+u6AIgEgDJq/eKO9C6sgm9wI6v/fZfTGBHYvftXkWY+i3wGXU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f5f67192_1526639958888_0.6108521843805217"},"_hasShrinkwrap":false},"1.3.0-alpha.f0a754a0":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f0a754a0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f0a754a0","@crave/farmblocks-hoc-input":"^2.5.0-alpha.f0a754a0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f0a754a0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f0a754a0","dist":{"shasum":"b16533eee307e48c451f5c51c84e5cee6b800440","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f0a754a0.tgz","fileCount":13,"unpackedSize":25600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbAsQoCRA9TVsSAnZWagAAWUQP/3CoFgJpauDS/EMak5cy\nrPh3TCSf+HxSNKsfj/Lbaq6QwwXa4qomgAuS0boUzL3D/zf/9phVezI9W2Sv\nzjRHK62EJo3TH8Fvz8RbpMeE9ftsCHQbp+Ikq9K066M8e5i5dZHP0bBEl5Zb\nsUYiLA74kd5jZSJ6tiwJPA5gXl8FOwh3xR4Dn/E8QD1SZFyNqD2O6kvhWwYg\ncfu2JGodd6TBip16ycyqxM9yOHuGlulZhuS11q7AA4HdryXiUY80TZvME9sP\ncTO3FM6Yk+r5cR71J0ZMrUfKIvCxuZUhshd3jVo1Vu7g4RTvn3zZ4ZhgHe7d\nFAg2pqp7kvskQRe3R0GBPL2pO9OOCt+fmnpU4tL1kwxYTzo+pC3Fz1A2O2i7\nwUC+kU2zp/PZlcCWKuSgzBnUTRUF9GEQV31bgGPaEQ2eSzLOwBoSwt557zes\n9Enz/0ZeOl9NQMUavyNvdLNVcuHxhjw7l50f8rC5XO/3aA9c08ZxIYX6V+eS\nwHucPmNYS0gR2d4KNCwsSWGFapiNWHc6RX6Sr+1xzAkD2Z/iAjgwR6v5ty9U\nURdyWidAHerrymPxn6rlqkXYbSioGYWldxc58T4XzrgmRiGjBDFspVTCNYs9\nHVC2VNFClU0d7yXPDun+uq0dN9fpu9RAHMBz5sglByeZd+K6Ogx94JQJe9V6\nL4N+\r\n=qx8H\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-YKDLvLvPFju7w8dmDXZcHk2EEkaPCRvNOT8zwUsgl268qzGIHWdi7XjHFNg+PDuGAgDsLLxLVHBMn3nXMSL7/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcEZ2YSU3T8mZqZJUY5aCDIa77bF0hyKydkMfWrJUNUAIgV7skSGgUOkJazjG3GKUAgpt9Ohp0luENKSf4sWuE52c="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f0a754a0_1526907942984_0.11707635631538915"},"_hasShrinkwrap":false},"1.3.0-alpha.03669b3a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.03669b3a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.03669b3a","@crave/farmblocks-hoc-input":"^2.5.0-alpha.03669b3a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.03669b3a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.03669b3a","dist":{"shasum":"f24a9a64ca418f10f3eb8f6bb494d3b9f524a430","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.03669b3a.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbAwrOCRA9TVsSAnZWagAAFDkP/1gsXuxN5qgaGJSbBvUF\nVKT2RyuTY4AlI7XyHk0KM+dh30ChqzDOrpERQUC+6NkCQIWEqBwmY6ZBC4FS\ngZFAi7BSsiDlsxBdMq3lmx+Ci8T3ha6sjpFGKT5qHDK2de7J84VBpLLMAWGq\nQ1L9ujwC5FxwEuA8PGDimhzJDxCkn2tQ6M6lNzz3CzzmFQYHIcVFoZ+KA804\naw1dvjYuVYiqjf/FKcuxSFVY/Efnlv/yfehThBFF6gY+OZvhSs6vHmmo8onc\nBeTi3Vik/raSVXr4FINcJcBHH+RZ8CMD3fKxfZYzbZ2eZTAdJcLWwWiO8drP\n0g2Dy/bM887Go3cy7+SrpdjBIBzbAAA3rmwDiUqHWn2x2JbXvYo9MTBrgPsJ\nKUfY5YLDK2z6ZSPZiEyDaSw7BZOT+ZNdOAVvcDd1EIQY2MNU7tB+K8Xu3EKH\nXY6E6FOpExhWrH6rdgEWBIto5GS+bRBFtsgoGiNS3UXdDCO6IH90VlyLZc2N\nDtBCmthQnIkPEYb1mTY7MWRWda5S/L0eblMitxGn9kxscwliTWQSOVqxljOy\njvq1PRnX9sLqbauDfzTXcI4DNHqhWtxMJP7hHMnCmN0vN2l+Oefl74HnhoyY\n6d3LIrXCrMam1xcJ3TJUH0B2o7r0uMwGpFmMIKuFXjprYrLRAFUY5ygTLHIY\nWvDQ\r\n=w4Ik\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-iV8JfL/6eMd/SXy0fRiGjRymwtZdhda/See+Fkv52xdCdf7P4ItTPFFD5vN+mvZS10DMnImGovuT3SD3+WX7fA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDGaGQwYP/2EWNw6jUOcLtIG6EJUxEQvzE05yz2KnmCcAiEA387BsDvBBsYLln/nJI69/byzRCNvjoukvfN2BV5ITmg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.03669b3a_1526926030019_0.7582368367715566"},"_hasShrinkwrap":false},"1.3.0-alpha.b98cb000":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b98cb000","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b98cb000","@crave/farmblocks-hoc-input":"^2.5.0-alpha.b98cb000","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b98cb000"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b98cb000","dist":{"shasum":"b49fdc670bc5b5baa52d2663dab092f117f38450","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b98cb000.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBBWCCRA9TVsSAnZWagAA0DgP/j6dHSjwzbTo+qOB78l9\nW3smyizKkJ071IChRzw+XQteflYZnnZL9rY3Ujs2CZLPoip0jWhSrbYrFiQB\nrqgUkCLQ1acIR8lQDfAapwhWndGGLBL2tsPjxtKjVdLBB/YecI/inEOrp9Qn\nGOF2tmQ5rXi0NeeKfbJidlJecsa4oRNtGbqhycen1TIfVx6ebWqdStcJS5bV\nYQ1bjxs0BUEuDJIcjz9Isc6qCrJoi4XqUAE9qAcLbj9Ne5SJxveVuXqiqA9z\nVuHPGqUuSDJJqKhw1GtBbjxu/sLWEl2AB3xzQZwNSdweLXPmBRo9e817isAE\n9U9owKpiWBm5w6Ltf+02cvT7i2uPgz8HnxHY4MkRN+sEGr+ES4Vw9yqy48J+\n/uCPcPsgfH+Cqw3fcTnMBZL6eGxTCKKKMAOj4ffHZVj62Hd9hBdQo+AcO7ad\nr0hIDpEwZ7yMJPQWOy/qzLl35OSBfsr16alF3DhxHTvmk5GyBXWJli7GgFNz\nudAFu2fLRNqg1RmVOVDvw4F2GD1AHLJOhLi5+4E6r93YHMj/PLYoKRGN0eYg\np7xDnQZLhX1hW7VIVWA1qpcJsa9A+FdDysmOUp6iDE9wLjhqoGNcW1JRZNel\nRevMZ0FZlaQZ+7EayPUHfGxF8Atm2poSkg/FvPttgni7xu07xj6beezOhVNQ\nKUDh\r\n=cCsd\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-bGM1rU3hELNAcnONnfHl9b0U9W0CH2Og/S3PiO9ZcqN/pVsALbQy7lsj1suq8gh9YmfEOB0gG7OsGJ0WnvEpVQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEnOG+dMkivlGx1MmYgqPCCGlbBwWWVBEkYG5BU0HGeCAiEAiE6zLYmiG7cWdsfUjkJj8yiGLSA6xNi8YcMywY7uu8A="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b98cb000_1526994306218_0.7135650169246148"},"_hasShrinkwrap":false},"1.3.0-alpha.976fe4a3":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.976fe4a3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.976fe4a3","@crave/farmblocks-hoc-input":"^2.5.0-alpha.976fe4a3","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.976fe4a3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.976fe4a3","dist":{"shasum":"7f68acdd5fabdb2656eb38e49ead89fad0451c4f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.976fe4a3.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBFbaCRA9TVsSAnZWagAAAQoP/RE9BqDlBJWUrPgCLhEl\nes1P+hDqwF8HjjKDFNx4LfiN111RE0CWSGDAbz1w2fm1gExou3S4VF4/+hK1\nt6t/bAqlrmCt3WS+G5XhXOeObV+7YzfGnwh+3TAgVXNMeMaKYnURNKww6UpP\neBG6nkJApqdsFx+TxJQ6dKxLmaAbBueVri9xbFR5bTnYyfG4CfMOv9m9RqKD\nc1tXE0ISdYytmT2JiQ19umbEuVveUYN7omVJuUalgsu5RNCnL81L9gk/X0SH\nGj2yLyZUhsdOFimS4C86eXJFI5WxiWiF2hbM4DLkG9Lw1H+HZl+Fbb+bri/D\nQghC6fT/GvdHrPCuJn846IJ7DgZbeEX6nV1gEJ7RIf/x1b1mFrZejKJSQT1L\nqudEJMb9vXqB2A0RGFWLJus+pOBgWJH3UKWZe+rs8pADqYiIOzoNrkbDpnoP\ngQkE+VWmQ97FekPxyyX5OBAC06O7fs3rxgEez6UJNCWK3Ogm8/BLRaCmHqoV\n3Jk3yvjmayYuBOaV6iq/+DU4/fMPgxI8rIn6u49VK9LFukzHSMXWLG3ZhC0E\n64CTXnNInzgqMIZEPuO7zZB+TQmWgb9X5LzQR2RUehJor5sUzYdD5e1Mck5r\n0FxTpcT+jTan+gK8YvBq7GpNSXjQrTgt5VCuaEP8csEQ2z4HutXvZvprI0/I\nbjQK\r\n=h+sU\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-PnnspITxT2BKNIjaFfQ4YUnJ4dqKMmaeMX86sebO8LQBPg2sZwV2vqCTyvZaYlZfUpzoijuVvZC9efwAxTXr0g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH+WYIGl2qh2wq/6ZX2iy/VcB60BOnk8pkNGO6fjEzcXAiEA146feDkeAN3Q/ht1Yn8PIPsoQx5MVCf12zhegGlixKo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.976fe4a3_1527011033506_0.39061401115177086"},"_hasShrinkwrap":false},"1.3.0-alpha.493dda93":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.493dda93","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.493dda93","@crave/farmblocks-hoc-input":"^2.5.0-alpha.493dda93","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.493dda93"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.493dda93","dist":{"shasum":"9aba883ae35712fcffe8e0d3ce8db50a956d8290","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.493dda93.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBG7+CRA9TVsSAnZWagAAkrUP/Aselca425G1w36ZkndZ\nwzshki9Rp7gLZJgctYm9AgPHrUJQD2S9k/TT+j2skuj4wItUUAyysJurty5T\n/xrd3IwgzEAQGUewzTmD9CjiIt4+yHQnfCZ4LiOVU9T6OPvRzcQdIRViCrcF\nyOQsw/yPmbuSoUM5Xncs5/MfnVYv1XIzOtJ22638mygMi7/INKYECu3m3Rce\nLsP1nNtFJ9OqK1/ebP1/gpwS5S4lVj4uB09+0hnH6l6ob0BarwJVdaOOFdQU\nOxBBqJwAh/zy56wpSe39Jo+2JrwONuGkUUdZyjqo0SnLvav/KqKYi2++4Qo7\njtk6XpgoEzucuS/t3iaFzbO6GHscSjX3uWw2IVwXjho2kKVf0Fr5vdaPW0qz\nSqgkQhWmyemSWgQ75SBmFpCoNQ67MOxVth93sYy2v+nLURhyknzLUomPsAvG\n1iAk1EkVbiIyPhCLkc28jkf5/1ZCCNd3sJ2vH0qX78WfTHOypCB9e7sYjeqv\nEb3qr9dUEqkmPuBhZmOTHQ3YJGw8TDhgaFbCQG0MHONl5izN2glmVzlNzOMn\nsc59q7LY6Xemzy7NWHe8h4A7B2RDrtpIyT5I5KNvfMatnAh9vGyd73pNXRQH\nY08zCpet2Dba2D79il2BTPmiM9qmcuybdBaw2XyZ1a+Yf+5Ts+3GzyEAM0cY\nt7ec\r\n=3LmV\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-UB0NusybkdyNkZ2B/tgA3us9Da1NRO3z49/7IIuLWjqba6uU6/3SlWR10bJBaVUvuymnR6Vrlb7pRYAUgUz+zQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGWRi5LkoJu+3xTgBO75hCKOBagmAInkqJ2HeVtOg2gFAiEAlWQDQRHWNwX8URDwoIlw4CMmun3REKrUOsb2xyn53vU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.493dda93_1527017214233_0.7726401560184355"},"_hasShrinkwrap":false},"1.3.0-alpha.302e188b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.302e188b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.302e188b","@crave/farmblocks-hoc-input":"^2.5.0-alpha.302e188b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.302e188b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.302e188b","dist":{"shasum":"ba0e8f3a76cc6fdba9b161918a25094aa879d236","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.302e188b.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBIThCRA9TVsSAnZWagAApjAP/ReFL9xR8hI9PFLv3bBr\njJZBGvbpwrcKBqDN4Z51ch64oUavlvWzuzBqe63XpeSyGLJWoO6OsnCvjFYD\nr4gHVTF5l3pp8vV/2qsvD0BAjOSEA7Qos14/yx6wzwt4Ibotc6E43J2K1RAp\noxz7oLFQEfewb+EW+AkHi7D/Os9Jjxaau1MLtSvdiqJiazzhR/a6h/YL31Jw\ndvJy2ArHijTARz40LBv5hxaF224PTAImCeKSNemJ+WA9TQ0xQhOjkuDTD7ag\n4V5Ui5rnNlTB41tgT7j4njwi1opJOXyvbl+tJKIweEVD22sBvCHG7SiY+fSu\n7FSYOIhtI/h1DDM7prLP2Gr/ENt/2ChfPJ5wcIZPLUtvGzyBdUSJqJAByJy8\nGvP4xCH6C0LGZeuiK6PIuYfwAVbexibYxAmm7SlyxbRBAI8llMqrW2zE+yeZ\ns4dgWJpZTjC1S7D81Qh/quP+ZYO74Eh3ujUZYMZqdN0erKI5muNwUcZFMyuf\nDZWz7Q2Ibhla4ODn1w4bfzbr6osKMWEjf7gA3/mnzerR3zLaqwhTYf0GND6N\npRrU35bvwoaad1tlBFNB5cm5FBKrpitgR67Oyj8jPVQA2XrCRowaduUuSYTk\n3g9xUfrRKJ0WBScTnzleV4kImwfYiyIuwsZFIT02CSStD2pbwaqG5D/JBq/k\n5gOx\r\n=dZaH\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-6PyZhyLZUVEVpJWNxMKreo4Hn0FD0AbeKavqCSPvS5GRKUcDArJb9dp2XB55oeqFtmBQ96UQlXdkyfTxV+DQdw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDioue8klE/3maYxZugjahQjpgQyEpJtv6RuurXboRaOwIhAKg6ZdhZjb3Q34ljsfjIzuVtyzzcXCeac4KbgBJVADxd"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.302e188b_1527022817436_0.7651077328148987"},"_hasShrinkwrap":false},"1.3.0-alpha.b431ef2a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b431ef2a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b431ef2a","@crave/farmblocks-hoc-input":"^2.5.0-alpha.b431ef2a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b431ef2a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b431ef2a","dist":{"shasum":"fc0a9e5943722a353add97b777b7108a7f1bb0a7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b431ef2a.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBIfACRA9TVsSAnZWagAAjDcP/2Tow0QTlsre3wD7R+FV\nE0Dmtr4xzuPec/YFHSjeLDHRBXIM36w0c0tHgxAKReVoZ2jO9yg4yvYOeSib\nEG7i8v1yKgubOM3KimoGleFnMMaG89P0opOu1Ada1aA/+2vf+aa8vd3jFbhB\nbRDKwrXntppI5baggV4pM2WJz+QNzzZUyX8PAeP8Nv9aTx9r/BfqZ/dDbMWz\nNbhyhJ+/DTPTeuDRgITlUYaO2pDlld7A93QlqBJNzCgEeHHTA6nPi/7Bd1CE\nqLcn06IH0swtxKucUpnxytZPMUeNzIGMZp/ccXldXyGMXisg1nDdU0S0qRy2\nv3OUcnVLwuaKq8LLk/9YUcScSUlGDfZv8mfFaA8+4RMvbwev/ULVt50BCJcQ\nzYDGzFmNmsVP0Vm4uEy/aBkOxYzszql5VcMTUeg346lRjV2lsBfqjMkH2n7J\nl5h1moT9Xh/id0ndqqw/8nYEBASHbG8yOBEB2gkeqs5TBwevvEfsI4yEeayx\nKJQGNs5uOKv0ryMialjNoyUFUWChl3R5heaOZgoScPSiXoAoHEq2Pf1REKrB\nnbxk1gRUKiCaIc2z1rvH9FYksBia5eYT8mIqzGHs1iYCDF/bR/OA7mGKLRoH\n8Nj/usU0dTvxYWfN97NgFapCQEWrXxArD0DfkqFL4AnroVP6g8T7mS6B4eW5\n1oQW\r\n=EoSK\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-tyfcL6crx5qJh58dIC1hHcctJoJdYqdkp0G8Wld7lPmie/h0DI4MhnAlTdatpKmpDV/8ZAc7w+x0VnS8VWSrNg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCePZWoUgz+dFlekJ1a/eSDqGXFaIvbxU6qYxFWerp73gIhAMyUTR7wZtptj9zd79MGcNG97oy1KP7O9GOQD/nH9ba8"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b431ef2a_1527023551191_0.24905460008153568"},"_hasShrinkwrap":false},"1.3.0-alpha.5fd51193":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.5fd51193","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5fd51193","@crave/farmblocks-hoc-input":"^2.5.0-alpha.5fd51193","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5fd51193"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.5fd51193","dist":{"shasum":"c98acacb9ebb695ff06e124f8acdf52544731d89","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.5fd51193.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBIiRCRA9TVsSAnZWagAAzWgP/iGKaWnHChh0+Wyinudp\nCg+SuYmJ8f4J1akJGi3/lOmPazqYdplp1Zhro1fVlX6rb9r648ngKW/N1wAq\n06B0H6joouew/bum/Pyhuc6e5yAt3MIpr7szu3pmA4uXGbIoxZaROF6lrcvr\nvViHf1byIZoH0P/FYypiN/JIqf1hkhUbAVCqpPT/Fcj354wspVHJxIewo9Nm\natJzxuL67GLZKPbaP1sxDXtb4gefUxP7G0yImjdVDiA+QfXjPCwidicY4/UW\n7mT90sPeAp8+Ti6wNAIN4/6RZTG/gfMck/YavH+kL45fRfLTIXYewPexK2ky\nyG7W306an3KRqVnMZArXxSx95Pdq15MxDTI8GZ1u2xAKmpVCtftODDScIicO\n3KdAII7W6xzV268sd90Nicwyg8QyrfVAygBwamfGrUkHg/QTi+4Xb1px+Ap5\nyq7HpWK2YRDirig8JAAtyxXLqnbH5THTk23Teo21wimINwIHYSosWUIHqZyg\nN0nE1wqxNvjDgc//Do7ALGOoI5lFQBpR7T6eHiE5+2ScO4uLzNg3/lMdtN0V\nOtz2GSSfxOdt7oy6qTq5uBPuhzvTKVTDcvHGM9Ouv9nafjHtufq6Mb5Sa/W5\ndLjD4zhEB/vtvWe8NbWbeDiPpghj5fM9M5HVebqxtKQ9Ku9cqdZSSqyiBX5z\n2jWH\r\n=iP1A\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-oLgtTWNmnDsbB+QIsztyxKb0q8hT1pznlUcTIBNxZTGsCFGjv4DVeC7FQcAjvlUOLZL5qgvuhaPAvdvwb6Lk6Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICB02vl7sVCeygspAUlLxVXuY2mkXspxXFAKEsSfpd+9AiEAwRVwomcEawexDrSjiXYexszNboVuyJCz3k6l/D8KtH0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.5fd51193_1527023761045_0.6013866364909788"},"_hasShrinkwrap":false},"1.2.13":{"name":"@crave/farmblocks-input-text","version":"1.2.13","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.5.0","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.13","dist":{"shasum":"917309e65caa719c4b975c2b9204043bf3c88f04","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.13.tgz","fileCount":13,"unpackedSize":25744,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBImPCRA9TVsSAnZWagAApw8P/ArYOx+eilEHv44wUAc+\ne2s/fNuTdAOVUKr74ybQIPN3Lt5GOf0BGnzmpRww5PMtOSmUtyywjckVCq5L\nRsDN4W+B+pgkL4VHlgrhNdIh0WnNCHly0jZbMAIicjJgSwOLy2glP8pL8Rby\nAgQbgj8UzGfLSeFpm7bR/Pb++XsyQFC9uOi/FkCp5XbjKtjIVbLk+ebOMZnF\nZ0Hf+xdVBrug8d5thwUASTP4bV1bsBEoNkzcF9Giqd8QbVOI3gDuqrQ6qiyx\nidsaqkH/3nlURhNZtUnCkuD2gL/eqnpYcPB62NxDADQ5re0w4V3PYPD4PxAe\nTHYhacp2LKdMOXS2IqoHzJSK84MEwSgBb7oCSRfYMoYeBKc9r9Mwv+at5S2W\nSoPlmaYeDtV2JJ1OPma9N5V30Hb3fodjZxrclu6XJfQvuYR22lQrYtY4LiON\nuOajHt8XXckr06Q9Wu/NSLdDZujJGq6P3kUQcH8dMSypj0895ee1lU6bLnRN\nZ5G9t0JWAaTIA6CxafdHMaTX7BzT92flhiz5teJqzzRpWoH76ba0a9O6nMZY\n9YWGxf4EzxYY6ITVVDz2KEfRLBqaq8SeEZ5aqm8Q+ASkesiBMf8wVqwVJS/p\nPlik/c2rw2EjNSMuwFp4xv6FbNY7OHtPHw76HMKeoi9dXUSeOo3nVNyUifFm\nKEnV\r\n=Poih\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-PeJGraSdVyJqbVCvDvHAsXtQmQKWmJXos3GGJ3/6LwPWoUQ0pPoUL/OWdjVQeVGCcBhylqxEuPRDZ+QPD7Xupg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHrrY4lLNyaDvw2HysQuzP/MFaunV4C5X2guxEeJyy7TAiAmpJD90rf3oq51ok6tXGPrDCxGvri4gNV72Z7P+vjjMQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.13_1527024015678_0.23455391532429815"},"_hasShrinkwrap":false},"1.3.0-alpha.8df66644":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8df66644","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8df66644","@crave/farmblocks-hoc-input":"^2.5.0-alpha.8df66644","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8df66644"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8df66644","dist":{"shasum":"83059f51994f939195001583a32dbfb3932a9b8b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8df66644.tgz","fileCount":13,"unpackedSize":25844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBIpJCRA9TVsSAnZWagAAFPYP/2+K9jtqRHTDTL6YwuZ/\nY7bT5jGo1/XhruhtHNnr6QSw4+IygBzwalm1nb3fYX0ZnxL7i8AaCirB4KIx\n/K1nuSCUXH36JdAfU/D84evCCor9MXt+DHWM9imU/WvdXxgJjpwmYPHjJhN2\nz+g+GLY5Aw115d52E9OEdnQ3gHsdTZX7Gj0Uwbnfb1aNnIfEvbg06SrAEDeT\nmSmCwUx17EKkn8yMWWMtVWuYHEO1Fna4SPkCHSt30ctTCl4x/1BNbVqrW3Ug\nZ044eQ7MtaGVl2rof9R6UFXsAg4HCMYwwCKNhV1gJBtrSIKrV5ZGNVbVs9PA\nWnEESt5WouER+Xyi8R2FWpeRwyjErmMgZ/9qSXpDgx4PpPInoVnEjcheBvBa\nW1+m1NBaOlws8SBY0h0rhcmHXptKHDTEmeBmmJasFq2jMV7XIzvbGaDbDMuN\nTgbTlULZjhHbqrOIZ1mV9oL+3eXlm1845K1JNtsNV2+xQCPC5734tIyQBvvU\nI62cpzKhiTg9WeE7zE4lg9tF45lKEoLk2lWFgrgQQIxxVk/dIC1hxHrRNYzF\nZz118Y0dRhC7Y0X3bFk5p0Z/25K1sf77aS0j5RroPZVt8eEOqdXp2jJPiMz+\nNi7zBMdZFKf/5spoaVEIhs0ZhbJ0KUJFHCFQ++bolviXwMrEnY2aVPyJN8Se\nvlwj\r\n=sgfS\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-KixW/X7zxFiLrW07Ud2hfljLc7tktypb6vWhodO4kr5zY0Cst6PtNx7jnRLLaEm2/eERM/KoMGzCdVZ9H85mIQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC2QUWtc3rovLeKssQ5p9oaiGcagEiIBnBlOnW1NSmM4AiBtj1zVI3rqXsKdBMHgjwn8m9sYDrPjy8UdD6M8+g/cSw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8df66644_1527024201486_0.6296829264059731"},"_hasShrinkwrap":false},"1.3.0-alpha.3dd61dd4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.3dd61dd4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3dd61dd4","@crave/farmblocks-hoc-input":"^2.6.0-alpha.3dd61dd4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3dd61dd4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.3dd61dd4","dist":{"shasum":"ea6fd4080e0802ad7496b250d52ee3fdb010d0c7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.3dd61dd4.tgz","fileCount":13,"unpackedSize":26088,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBJvMCRA9TVsSAnZWagAAY70P/1GudqP2k0TCFoKKT1eL\nwZW/bjM0W+a2+BWWQZhY+V/vdtNC7b73GOF1WSmKnZZzlFouar5w5FKlGtc8\nhRZrX1eGdaJ4VsP4fMhe07JhWPKa7kJfshvqIS8qnbEAyC1+EV96z9jBfs3j\n/x2fpR4AlrBl0AzLaruxpswG5SfBCm8EoRBVHG8pbDxn8/3SF94449jc0PFj\nb569NgnPhVD7IFdV4L8giCiI/McfppmJISUKG764d2ReqJrlk5jDCty9vJLW\n13fZ1oLqszHkUgiZAv/5DtZiPMbezE3h6ZlSbvO/mu3NXxZr2ENQGU4J1uf7\n72RUKg+XGLOuttquATL8YQED9bYkwncmUQnf4busoH2Lky7kHD5w5aTv2YYy\n4SrQ+3yCAKvI/OcIrJ8fu5OYg7lPO1xtmCAS4pfKaoofBhh5PA2fbiGTqUo6\n99zPMO3mtN1IHeIvFlkm2CJ4ogtJqWdEAofJG5AbKy+OBMfIdRzhiGYOkxrK\nUAGQjWKwR26cib+JzohvkVtvHMMKO00Du1+uhu72UaD5G4YbmUTjZHPPKc4Q\n9RKyo0D3foVf7u3NyleHLjcmPv1N6SCedhcyd2ODe73vgHqH/3h50vFbubRL\ngocqKPpv+G9IioS5FTfXRVEJ40sLDSAniluYPu3fG4wwfi46bXcS0LPJazir\nhmjW\r\n=wa3W\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-IRzw5Lejwle/QShLd7At7NrUtvyQKbZhRt0MCuWdKnjPbYpTZEKIAdb8qoCW0HG4vALr0/MU89M9QUMobxE5cQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC6ai7T/47FkMyOZKFOKeimTgkAaMjZ7rvFKvBYqDAG3AiB+ozMyjFQ28tWtmEEDwtqGWwNWjwnVGm4WPZmUmAvuXw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.3dd61dd4_1527028684408_0.6162809386042132"},"_hasShrinkwrap":false},"1.3.0-alpha.4b8910e8":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.4b8910e8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4b8910e8","@crave/farmblocks-hoc-input":"^2.6.0-alpha.4b8910e8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4b8910e8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.4b8910e8","dist":{"shasum":"2436e89433fa6b34c609063609e1e66d724d535e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.4b8910e8.tgz","fileCount":13,"unpackedSize":26088,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBJxvCRA9TVsSAnZWagAAor0P/3Tjs8HZ0hAfR83HWDQ8\n5dj+UQcoNsjyyTQCjwCSBytRZsR83NeSfo0i85+77SiH25sz53RsNw+s1UYt\nGaB2Y6p//HRiJpKh8wC3QuHaDNPrbsemrz3hhb7A9J8CnBDHXYT1inwx8cIA\nxUbfSQ0i6iaoGo+AT4PAM1fHFgsJKexM5oJrg0eYuFfawwNlQkAER1AjY6gP\n3L6edb5gdBa5EPCvm1aNRD210/pBkHOw6aU4wgL6q0yOPJmfnJcwRmB3R4Ok\naaheaVhzam4CLbERJwezG3EnRC0hY/TltDQ2DWVZISTfgVbLuxk2ssIZX2Dj\nNWYp+i3kLLHFE0MhgSrXWREuSrjO4kB4H6vSv9Flsd7mJTU1gnpJZoYZ91Xs\n00Ua8V5aWWQ+J41ZyQcpcpjNKgLpjLVDoc+rzuQ0v1bmZZXO5tC9hduKn9E9\noRzMP7NJJ+pnIG6e69v8QP8yXHbzFg97s1N3MYLny1OZxVcVq7sJa3B/QCgu\nSNGtH6BvWEnrz/OBXmZqJ1zvCWO1VIPQtGB3esI4+wKrrgBJLVmm8DY/DDCF\nJ6e9xsCDqO6rBjXteQ7yzoG7ePSX4Bas5bQg6yxiqs+chxkWRI6FJ2vjNMyR\nFnL966PLMRjy0Pu5c6t1ZwijIGd/z3pXfUc5ZTWIL3Lu5DHsNgbg0yDwMWQl\n+mwB\r\n=Vhcy\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-LCgYOfGhwCHqiipI9YUg1kHM/c+b7u7oNkzjYnYnfJ7FjUWBe7AUeiQ0iqETcR0RyQzhwfx1BvILDVbNwPKfJw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBOfJVFTzG28eXgr6uUsFKySQZuqn4VCHJVVLEa4IWEyAiA/HUowzNNfP9lAEVSUfDMjYbl2kz7/cvoa3kyhiDGmsg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.4b8910e8_1527028847015_0.40020221803392775"},"_hasShrinkwrap":false},"1.3.0-alpha.62810329":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.62810329","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.62810329","@crave/farmblocks-hoc-input":"^2.6.0-alpha.62810329","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.62810329"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.62810329","dist":{"shasum":"2122362ce4a3aeef33f267a49339ecdde0af0a25","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.62810329.tgz","fileCount":13,"unpackedSize":26088,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBMByCRA9TVsSAnZWagAAc8kP/2siB/xjSPZHRZoJwF5p\n+3JNvVoLF3HuKXL7Oz3N9rM3MsgwbGszhRv5Gg0otEnqLpATz0NDaKB0F05l\ngRqIZ7e0PZnPORjoWQCnVkrS2VyX2bYHumFisNkSC/wTxpYjC7yEKboqoQUH\npRErdklSiv/46mNU74zmy5JNx9Bmi88r4Km95pl0Z+EYRroEkvUPbB1BwLRR\nEOJI9LV7HEalmGlTIih5ywXUblEQkCs7LtvO+mHtQ0wsDe5G9EzWi8eRShkh\nrQoNuT35M9YTQNjkK8d0bStMf6cF46Ad1rRxvF41zVLU215louxbacrbg4pX\nfQXJ0Jvgds8FgcGBa9Le1QeEYmpXVYFoA0oY8xN8yhbQqP3nW8uVzAJy6mYn\ng8AXVwx8NYNSk7NbnGlrHIHdSk7GbHmVM2QbBxzM7gGdfRXHwfjF5WJJXlw9\naWaQTJQ+YILM3ybPGEunvpptmjsnBNjnKXjStbKeVspA3Gw2+W/6Eo4inCaP\n07MLy41LiEe1NLGMeCxo4q99f9D2z/UGePR+sKY0RaBAW6vC/vx/VRl7hBZX\nk8aJCo+508kuoiqtiprNusTcN+sAJPCHveRFCcX8Ey1+WMP3iqTzv4aBVX6C\nN2jJxn3ekAkZAzpJr2BZKHuT2isusGQ1VdV5+lHC7G4rMA2tpakfcJKQpQqo\nqsL8\r\n=YyJe\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-2P5CU0AMeyS5hDGrFOq7WSVP5dtKsUyvy/fidHbJsN/eTJ+xgBIHouwwO6tjXCuKgM3fqg6bRBQ/fvg+t0+wiA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGHUd667sraGQj/Ryp7Rqj7T92SuKmN+kcpjfWtVDq4FAiAI8/q0f+1Q6CfXgISva3QxZoEN3ge+UHGpB0G8pyER0Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.62810329_1527038065351_0.48041896266562767"},"_hasShrinkwrap":false},"1.2.14":{"name":"@crave/farmblocks-input-text","version":"1.2.14","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^2.6.0","@crave/farmblocks-hoc-validation-messages":"^0.2.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.14","dist":{"shasum":"f88811f41099bf311f601214314a9d9b86095227","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.14.tgz","fileCount":13,"unpackedSize":25988,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBMtSCRA9TVsSAnZWagAAN9sP+gPyHWqqGU2sEKfS964D\nemDSDRidrWx6pZYxmDIGzXe3BWQTSayVaSVRU7s0ROM21aXRDD5JWPv1+bVM\nEvs2CbUhocsrBzh52rUMlhrE9qdljKWO42K1Q1o/t2FumqKlq/4Lj6iRpnlU\nL4XcbJU5/1FO78Kpx2g2ANBuGYoeHgMjsw94Ytdu5hnt6Es/iNDh4GtYyiQu\nEfpPGGGfeY/uP0LrT5l49HfCYeueCM9UxG+s1g/PC62MmqTi3g05aYZLQ/ky\nVtQsenbPv+CLJg/jAF7gC18lJ0XGViO9xQigmJqj9XnEPlFn4gt4lrf+P13S\n8owQ53QLza6m8oLUNXE6mtY11JUoZGeM5eTswSEOOvKAXZ76wDe7HOZH/Wm+\n6NvEgtiYtvfaDZH1YvO2any6hGge726XrWcaBcFtEeexQHZSKXk/IgcXe10l\nWBy+IE1GAmrzsEzbmZjYdpLmK41uXQbMANmo+bpxryw++LuexGnfeYEYAgZU\nv3JImLj/ap0Sd9rnjVrZMeNNTgmfH1PzD+TXcdDsFv2691/8J9DrftGZRThX\nqDMnL9MrSQL/xrCmNefFsvBr7cquAFkD0XZh+k2+XT12FgJjTtn4+gVVnQd5\nJWFevfbFw5XS7wfnCjdw+l2UTWdDS06UUZgfziAxaz845Z3YGpjJSFAtkJdv\ns+GQ\r\n=GPIK\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-arUrzan01x+HpeZnrP/JejXOopGXo5Pd6xLnLQhWOjL9QZXRU6xao/16cAmd+IMdzhZjHxhFDYJDJR5lhnCwQg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGNn/1elZjal7Ptu4wSitbCQ4feclUuGTDbDntt3XCrwIhALOC5gW0K083tG/gcg7F6vg3q8rT1yD6A3L/QMOGU0jj"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.14_1527040849786_0.4042455497142139"},"_hasShrinkwrap":false},"1.3.0-alpha.66c6eee0":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.66c6eee0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.66c6eee0","@crave/farmblocks-hoc-input":"^2.7.0-alpha.66c6eee0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.66c6eee0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.66c6eee0","dist":{"shasum":"d079bfb6193c7aa4c214594b7ea98cc62e5cc98c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.66c6eee0.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBwN6CRA9TVsSAnZWagAAtBAP/28BefjsGiBSFjRDBtfL\nhjegm6KmAeRdAJJCk2xRu/bW2ZnwWrzX+ZOARjrlo8Y9t+ke44MjlVlK3WYS\n2w6ww/rfe9HUX4NAmNvVO/QWQa8PbdpVQBbab5U3v3UId2/Mee0wkGxNbCTP\n+YVUtZJ5j6DksqTU6A8cx8b4+JdNhAH4OkqrgtR4M1r8b6pMMSlPc1jcHvCh\nom6R1FU6qiw9QV3BVWwSyggl5kttc5W00mMUkSDwMrftk29Mv13iOe19Uj68\nVs1LOqgpLRFJW6N+dzrDzW8UJyrv40T5XV6od9rLzUp2ER6C9XmA6/+eq8H1\nBkg4WmfD2D5cULTOU0ob1lJEEO71NERGDMQyHCCRv4sls+1/Vl5GLDKe/zuu\nfreNynHXBV+fGwYJmTzQDXMxzhBUzzjCfnyLR5Aviii7ShsmVF2GQF2xXeFq\n0Ok/Pz78+0DNWk5Ou6BVrH/3M12ZU9BAiJM5td+gkldegwNH4ChnEfP7zoGN\nbQTlSaYDmVg25JfKATNz1d417O1ZHmqkp1xlpXU/sKEUYN8xTDxLC3lyhMRP\nNFl7QtbLLOlNp94AchjStwleNxWWn6iayX9onPE93DmrvNd3Tg9DLc0+i5pd\n55SQ2k7khLzzr1f3M+KN/1BenZmPiwCjRNnDt1h0R4Fs4nCp7oMSALmc3hal\na2tc\r\n=Jxvj\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-JVc28puOCzoyDolCoLJFWyjB1I6HrWu6sBVH9sM30xBtyqM/PFYLyz/XDo1Gy//nbLA6EUJ4SJaG+xqZxtwc4Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJyZweLAg+Eg7pT8oxeL8WJAd9BUGnWQ+oSxhC6ngh4gIgL9r9nS0OgQ3NKDdsrGI2QNgOTM52NKPuDGQRHBSLfSc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.66c6eee0_1527186297872_0.22453579800128698"},"_hasShrinkwrap":false},"1.3.0-alpha.65bc7857":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.65bc7857","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.65bc7857","@crave/farmblocks-hoc-input":"^2.7.0-alpha.65bc7857","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.65bc7857"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.65bc7857","dist":{"shasum":"20d8233e9e1b8cd65da9d224313df187c5de1d1c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.65bc7857.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDu6DCRA9TVsSAnZWagAAK7gP/icghJoYH56FVz5Cjzms\nf0FPhvGsbTUYAnS2wUvYnDthGdCOG04CIpTCc8gld3jcXBg+jXYFLRIKkxgf\nL1obrBJoDE73DPKrgH32dc4eKM++Z9aAWXOGGQazBdCRk5Pf5BoTQ2tDCcCO\nuobIKRkrgNN/vIIrgMKoTckrNeopnvUkrWKC2pD6pFgx3raRXLsIiQjknpFx\ndnbDpe07kIpjyYsdYI7jQFGEyJWKMtOHyRS00se0vgO7AH/z4uRibTfx1CD+\nwVptOxd2BOGSsMUYe4tLbJ01VWaNEwSKziDx6HdRm2pVTrHzdcNIiPhxNyNN\n//CRoKgAzgX/wHTifoRLiGeRIbE6/2JqaJMOWd4JCPh9tOzo6A8cWq+X2JMq\nuJn9DitnlnvO91cDQ/prrtn4ybEs6rSXDOYIXQ4Ql0zDVb6yGno6xLxsnPnc\njFaLuQpFEdKkD4EYXC/7JMzjJhoLVTl1lMXL7/+xIeWlR745nI6b5OG9eDbL\nG99SE9aPpIWo8wMQONFjuvurd5p215fmOxPtRg1YdCVguHeoYQYhnOcC8ZlU\ngGc0xUkyzprafuwM+NCMRGpRrW9ZfvLeFWyyQlIRZ+LxC3+6q3Ruynr2srvP\nEmje+SNO95HmrIE/S28fuvFk8N+l9alXMfa9lqcgtGy8w3DZ0drtQb1aJuqc\n/zdQ\r\n=8hCA\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-Kbfv8wHNT7ig4TR1XMDYyFgmV/LcUV4e0jVbH9crxQKS4KQ3Tb/WK5F3uZBw/I12cY+NwyVEuvlmW50yTj0Jng==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC2mTJcJ2ORUExmH53SUFXVby669LZSYt12ZPXI5FF9lAiEApdjbgNe+kpr7n0TOFCXeBFNZY9Nzz9e5hi/hN8hksag="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.65bc7857_1527705219180_0.34983762558496134"},"_hasShrinkwrap":false},"1.3.0-alpha.9c90969c":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9c90969c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9c90969c","@crave/farmblocks-hoc-input":"^2.7.0-alpha.9c90969c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9c90969c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9c90969c","dist":{"shasum":"901bf841cc605927df996f347a0166434f817edc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9c90969c.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDxokCRA9TVsSAnZWagAAYNsP/0cv2V/xzTsUjCITpS5L\nFTHSdx1IWCwkIZjgk/FCa0vb/7NOk1qfteMlTNmkNyraUeVIEU9Fv2WAkNkI\nDiawXM1ozoYxBoD6vJE3/Go1bvm9ULmofon42eXVoZmV0G6T+HrpBc7PlZgz\n5tiXuWjtKNtSGzfyM6gmIbhsq3z6Hj+UQ0RhMkfdGxdWm97H9DpOpFfoAwfF\n5mPXtdHRUM02vOy3HXoUCpXoeI/VLkIFLc7+W+y6F/bfY2NS7Hc8ScYtdFX3\nX0H90RD11vnsjwJZooIfiNy6vwWkNGfS7DpmkUxX3tVAZC7mYwdIxi/pwgci\nJhEAvUgxup8/dvWPgflzNgzVf1kZUB9HJ05VQHlz+VJT4r6iayoSlZ+DkSEN\npCfQrCv4HtYD3/n7+0T454iDOw+ZCGLwrlncJMPkZW+wzkkn7FUf+VYaE3dF\njP0xWBj/6iKxZ4W9tw7/IAtF9o5ZFyJVhvUSHNHPIexwCCAu8HGj8jFW/kMX\n6HkKsUIjipGLrFrUrVMX9wvgp3TMoJWZ6YW18Q9Wv7UzGI01zf+rPvC4Cf+U\nH7+7aJAsR3JPKLcSao7AObJvIk/mnL/0rDJ+3qtGtA/+FPOFllddIQMfwm6p\nk45GQI3yHHZW2mWbpUl7vgyE5+otcEPdxqR/6gJv05HofyO5YeosMbKoJT2t\ngMTj\r\n=xgfE\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-qJDcQNCi5KFZdSB6E9ENquX5bxjio9Hzg62+R8VQ9gMOfrOe1dLsdPa7EL7XzyCgpJKD7DeYGUSPllA51Fu1Vw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFn5qHqwxQJT/czY1nHC9a6E3UMnmtTikRris1VtTJrcAiAGvfGlEplj+/eqIkLevA0WFwRZhg4KDnU0cAjZYkCwqA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9c90969c_1527716380514_0.870410522884753"},"_hasShrinkwrap":false},"1.3.0-alpha.f8bf622e":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f8bf622e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f8bf622e","@crave/farmblocks-hoc-input":"^2.7.0-alpha.f8bf622e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f8bf622e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f8bf622e","dist":{"shasum":"0f7d71af208b08fcb52ed4adccf2e84b2e5f1a2d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f8bf622e.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDyUZCRA9TVsSAnZWagAA7fcP/36fLdaYtkkfEWj+aNyL\nCtqK1Ss4HFrjaco9SMvOyDIfmrTIXVclIqXTbxgbv93EVOBoCMcu+11yFI93\ngOdIIHaFc+r0tgxPFlq0fZVddCgI1zEpJCZEW4kO/dLzO4+2oxMHHuQm9DZj\nFl00hNddT49X4yuPgKYWr8mapvZxieg6S+W6sl+qF+DxzUN12jk5zmbSdNVL\nq2DH/JGFq73vis5WTiuT/DmNcAVgn7pzcKmMHYf+rpZsG8AazGilAo/tij1T\n/6ExHH1ZIA4ofEnqRT+OefChNOrzU3QJXeyDlzmyL7s1u31bAlTnwhiQdXPu\nTJ0UqJi13G9pmO2iEl/iT66Xgy+XLqUERl3WjAalXa6Sh/JlupooxTLxVXI6\nZfJVwMEwhVazvfR89JEyTQ6dB0waElhTDl0yA06YKYJx6pLbHRD341ERcez7\n5JRwAJKqER7zNXmQWewDT40CGjjTP0MveJkMEbuAycbiwO7gLLP31xTBNmpy\nOR5sQpbhD+yETBr1ltYo9VGhT//3+cEHQiPi8W7pwqxANFDXI2KKt6UbNRKo\nJNe7awHI3wiRZjxzHKj3+ZWeJXWDcViOTLtnZ/9JmiCpi5urm1PTKbPJEjQJ\npxBoI+H0pJ+n5+kqtoNLdaUQ+T3eNm4IT3HMB0ffPDkHHnvaRLwEVkwu2udl\nF4Nm\r\n=6r1o\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-JgjA8+3g7TyIBvoBnocrB61OY0oLaToM6wq4WKnDJZuVALJadlHMXL9ExSjtscenT9Zo3+93DyjImvGDgeJKjg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFOtgTwQ0KNwW+x5FQqRGdlQR/L9IOWdYsRy2XlqqHFBAiEAjbcEGSjw9SsjyDOvh39ynzLiQREMVqbDuW9D46uwUCQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f8bf622e_1527719192176_0.8263195662258429"},"_hasShrinkwrap":false},"1.3.0-alpha.e2efe846":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e2efe846","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e2efe846","@crave/farmblocks-hoc-input":"^2.7.0-alpha.e2efe846","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e2efe846"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e2efe846","dist":{"shasum":"61c04172822f360141efb22a4c30ed8bf524e1b8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e2efe846.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDykuCRA9TVsSAnZWagAA6uwP/A3tH0/HkoCuxV1CcQmB\nx0ZUSg06V+3IOegqcUoC1GHG+rDYwZvrLpXTNWK1asgkc4JUGxAuOHPClWWs\nnf+h46eK2tgluJa9ooNWDT0DHn2YZzhC5r7NEdtqr/qdFNFWhV1kh6icdV9j\npz+l3IDDaCQmF/dDKXivUqboDVOQJu+2yDP7H8ujXgLWXDib+9jIkRORr8Kj\nMREhVfXBQngINsm7myyscFvKOlD6Lu2UhYUckg2LHD6yfUPzEvAlc4rRxnG3\nnpPbVonPYsbRmQ9dYkpACRoSeHpgoq1WCDtimBeF6cgGC6WmivBDzn6LpDEq\nOFPGqYvGFR71SWdb5fDA+x0Ut6LehMNoLqGQx7Xm+RpWvgjgcGEIIIiRcYmc\nMFyprXRBrzKz11cYeoNGjYM4TZLsT+O05lzQPl6pmbQuEIA0YEi2w4+eqILb\nJvj7tXpDWv0nWqURbWcUO8hJrDVLP1deZtelnp9Q7wTEgbPRwahwML6ZVac1\nX/pGSl5mp2Vf7pealfnawqAqVz50hlTbN8olE8WMABYmCA2F+Izl2Vb2Uu0p\n6W++7cROkqRt7YKdYarnVrf3qsxHTFbb2MgBX5MueAR0fe29s7IyJIOhOxvQ\nSz0f/ngp0ijnpKZEJRo+du2NVMZhZCh6INBjqUw3HELY6GWEL6C2Qu/zrBFk\nFl/Y\r\n=Bf5/\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-LOW9GNIxCeRi6bve09BLaxvqv52AFZ6LeMR2Cei94Bag5oHIgGAaP7ux3gNss3kyr122CNr9lU/SieRTymc88g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqxGTR8PEzxQmyyf1Aw1/QF+ApdQoGklFBl1DDqQQ/yQIhAKv86kd0P2FUSgzCHr1tITJ9TF0Lc75DRhkgzWiLPCa/"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e2efe846_1527720238587_0.5962375419191552"},"_hasShrinkwrap":false},"1.3.0-alpha.4f0abefc":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.4f0abefc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4f0abefc","@crave/farmblocks-hoc-input":"^2.7.0-alpha.4f0abefc","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4f0abefc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.4f0abefc","dist":{"shasum":"db42762d0fcaec1254175c4a71ae83af7ffb5a0e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.4f0abefc.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDyvACRA9TVsSAnZWagAAPVAP/0wpjoBznrP7BjLp6yKq\nz0ABm16smdWIZDYZEaTdH1C5sWAugDDpJ1hFUplAsmbepgRCNCqXY3hIef5B\nAoCl7TGATpJwFEkodR+Y2AKIaSiFEYs3um9P1dt2MdK3aaVmeYzOI6eIQLJO\nj5SZtfWXD/5X/yEqgi5JpRkQOzCXT3bWkQXEkhCYID0k4UbwUPRtETxlHW56\nGlJeQoyaE44nlK0cj/faO+DEAUaa2660S+qc0bTm3DC/XmQvPkpL216b/i03\nrcMjsiUUZkuY8IAKCoykjVDszuYkneuAFT3hL89z2yG9+SQjEbgWYEilVRdZ\naEu1VI2BnJtdn8ruCYlZ8wqUOF8Kv/BeI58heQ1l+lZ5/QQPouG3es7M8PU7\nw5Ty+jDykLsnh8bZfyZEl2uEtfEKwFuqE3ZMnit72VtsTeteuVbOGJg+CC1n\nbYdscdsYFT0BJq+nA99s+JCWz3rzKjMyDod7C4mA32K16iMJfeaMTPUi6k4b\nAAxYwyqN+SM5gdwnnBlU0UGmwdiiInw2XQIHvT11vVqe/H1cjIzk+JJomDMf\ngn7RbAXQretv++gv9ZTEXGzwEmWUTwHqjWfKjJYe92OR0ONMJPrpolZHFPZM\nFJvw8NV1WIbBixmFRMfiYxwO/F3lXX/vNozKlh401YW49T7h/RhYsjDTV1At\nr7qj\r\n=DBbu\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-i/E5KnE3gRv2ruxgS7nxKchKPqm4MLfMMwxefbRIvfcBe5lMHYlgCiqvy8YIKFYK3qb/ghdvp+xGJ278PbQpWQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWSW2l5qaK9+oPlpoEZ0eLe4aAX48LRvenS+dATtSbngIgDetnBCW8Y1rPpzYJiqKtarhyQ+veBrDKEu1GIC+1zVg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.4f0abefc_1527720896383_0.4452568657521534"},"_hasShrinkwrap":false},"1.3.0-alpha.075a0b90":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.075a0b90","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.075a0b90","@crave/farmblocks-hoc-input":"^2.7.0-alpha.075a0b90","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.075a0b90"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.075a0b90","dist":{"shasum":"43b699aadccfd1172f68a4490ffff6aee8572875","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.075a0b90.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDyzrCRA9TVsSAnZWagAAuKwQAKLup3xKRrtJLio9FPLN\n3OBe9tVzTjCeMmdrPd4sLtS9BYHae9EwTNaZTqEXe7zQZ5fyAPqSYYMSnNcg\nosGSIPiTs76uTiA3vfYbLD+sLJfeDQMW+Eju8cMNKWI+cbXo6f7EVcZaj18n\nUaI5JBhYOboR6ENvpBpgr6oLRXiz2bk0xwhUA+2WvRO1nEcTZQIsr7sEIid6\nAkhctip+zA1G2KO4cuoGlfhQ+MTmG0djdwkhhDqum6mw8WqMxS+iTzE5zzqp\nbjOBWYuUP1U4lr+mUq7hrqWJTheBnYJ88/1AMGi9ezADDFlz8st6VQ7FlW9I\ngkwegtdOe57XcEyG1Wl9rV3mIuFnE2iZMsibrNPpskMKIDzTKqxG9vpuZxIt\nCScPmfv2LzFmC79fLYGv9xlgH1WXLakEuMhFtGNjid+oMzK4ycsKRLBnFj9F\nbTdkGQMr68OBEpvvl2TEZXAemzPQJbBwurd1OGMbH2BJWYoE4dv7Fk9bRw0T\nFJAxR/Za6lH7A/wMAN1nfmsR6oRDG7O2kQvKdMClGJArIVyOuqaIuRMOETV+\n5d+de1Km0PYgUT/NfRq5t3W0A9C2AgI/g9kXQiKZxKS4KcEXC1OjSxQyOs0B\n19kzayaphM9gcducOfqGqD2EeWRQw4eiUfH1KsgvSQVtCYvGsT4euEKXkqsl\nXXuH\r\n=vWx6\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-xlJG3KSAoRbkIpGakD8bMb7G1Pw7JT6ilf9NOjyDZSN8UliHh2vuRJN9Osk8s7nrRanzX16D5zYe5ISFltIHYw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9m7wpK4c2/cecqG+dCuVWU9EMJVbVH8reYuc7W8HYhwIgZpNPLqZAacsMrySgOd8Pu1JTlZS7uhpuv2NUueMUKVM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.075a0b90_1527721195499_0.48583894434433494"},"_hasShrinkwrap":false},"1.3.0-alpha.175558f5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.175558f5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.175558f5","@crave/farmblocks-hoc-input":"^2.7.0-alpha.175558f5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.175558f5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.175558f5","dist":{"shasum":"816108bc8ab17a95db1ae615c5987d26ff23d2f1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.175558f5.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbD/cUCRA9TVsSAnZWagAARl0P/30MZo2AfGJuDr1/dHkY\nOAsoFvTSqHZSj8Js0GCpBcDxaB3DK9qT+pWFQ7O4oYuhLuaj3kc1n/LOpQ6N\n71SFp68HeGyPrPGwSyPWIlrWtZMaJR6qHzGuj5krD4cbWGoERwzc5t9uwHSn\nvF58u8PLrHsFWAprpKkrJYg6qpJoE6Mzwwfi+/lGbCKOdZOtaB6XWvumOaMr\ny700f+Wht6F6OfUq657ipKlDsTsLoJSa05uaSF1xtMwimkO+jIMHFG3J/55f\nNZ2V/dlcVyqLNzD9JRzC64eUBz+WZEjkRAjab5sZ1jvy1lyQ5b6pjhcrVoiy\nxWSvW1yiUrUn4TLlHrrcncr68BjJrU0Pv2C29/Cf3ueh3Us5qLavGzabWDpt\nY/lwySROm8kZmV1TvcULp/LpDtTFCY03UVbk+OehQ5+3mHVXKDtdVolo6Kt/\n8UBFxgajANIdXYfLSfUeceIqOt+HvQhEL3pIq+tDzgp4g7gl7nNsldF0UFrH\nJDCTn3W7tQa+d+mCKwLZIqQJPh2zYoxgHJzz3tN40nT+HTjy8xL4dRgHaZeI\nW5lKkksJ5mOrx3u8RKIDbFyFaHGFwshHynETBIDq7Xw23W1KdeQfgYFJckWo\ngbALg1nKCLNEBNDr7CraItbTuNenXsjC7qNQCe2tBWbQ5VGy2EQpRb+JCk8q\nnxOd\r\n=TZPo\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-dnnmV660K/QFPdRFLSiHfpVuTCNIBRazn1fjakndr3Tdi0kCoq0AEwFkZDLWF3FzUEpNJWUSrBFkFZrjTLjZAA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9V0zA95PiDZ/MlYNdryX9aVOVCD4LPtOTr78MtZmwNQIhAI3OBPAn1sfV+GVotr2AvYQjKf2ksepSYYAfbLMZHGHA"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.175558f5_1527772948412_0.14200493047615637"},"_hasShrinkwrap":false},"1.3.0-alpha.f00009ac":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f00009ac","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f00009ac","@crave/farmblocks-hoc-input":"^2.7.0-alpha.f00009ac","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f00009ac"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f00009ac","dist":{"shasum":"5fe899414774e8b03f8a1705eeba939516777499","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f00009ac.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbEElQCRA9TVsSAnZWagAASxsQAJRXJH9hATCAFzuM4Wmc\nod6Sv7wGfDmhFPvAvfY+tMeLGClJ4cttoKFZfbXlk6HmAECqQV6zS+RrR2md\n8YBlRPEU6pQqz5r0dVYbOv5E2nN47UeYtYjS2sslWEMulwwZSUloD8pLXAhh\nOX28Nvig1yTFRaKQXSiAStiwuYRoW7NpnfTIrd/h3N4hlucRriNEJXxHfj+6\nLUlJXapD6AV0JOfw0JQf3Va+PUNT3gCn6Ec7doR6+f8yw71Mnn8dDj9ASlZX\nJFat63f643ahk4mIMcXrcTx2mN4YKqHzc4w3Mf9HltcFSHVlj/7HqgScQKfy\n7ZpXgBAMjZ+GrlL2bRWSoCv7B4fNBeCsn8l36irf/6zbP4oyRliV0oW6/LvZ\nkiQxoCox0X4lAzjHrpqNobK329ZjQ+Hh9crISwQ0XNN0B7CQdvK5cVBgi0Fq\nTx55UInDEBrmbNs4uTfz874zhnqNsp9hFDV33C7573tn+Pms/QjOkXHIsinv\ndAw6ebdPlvZn+Jb/jSjbXrhTCQO4J/WtqY7KgiElRyoCdoAmB+fMQ8E+CiiZ\n5hoFQBnq278mmby8wA5RqeYQLwTCWcXtrFZ/kDeArT7nyjnp1c3x4f5ZBfBc\nzHfBoMb7l+o3w/w+8tm2lx/VX8kMNrvpEGqyP51iNzSndqrNXVUchn4DTiH7\nmbWd\r\n=9cdP\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-0NWGgVV6DYofci527YtMcZfn0Zzkd5cw5pCTMUhczxh2HUZUuog7T0YuR/TC2sj4XXL/+gnPczD50oTmk8/ycw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIERq8z7KYGKE0NZZ7RwX+I5o8LrfmC6bB5hSPvj3ZQOcAiBZMtu59+Pwr6/NeoypiPw2xAMTnw4DDrbfvMrzJtsgJA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f00009ac_1527794000139_0.0998265368721798"},"_hasShrinkwrap":false},"1.3.0-alpha.352eb4bc":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.352eb4bc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.352eb4bc","@crave/farmblocks-hoc-input":"^2.7.0-alpha.352eb4bc","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.352eb4bc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.352eb4bc","dist":{"shasum":"bba5c02d18b82165761b78f57e2adca706d30ffa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.352eb4bc.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbEHkuCRA9TVsSAnZWagAA7U8P/Azqc9LXyElCXSuzCdYp\nIqcNxjxFntBnb5t26ATwRdlHSba+TSZkEr40T7kJ+R9H0BQIi7vCG3/7SFK4\npncoXUt58p5HwsPMxvbNRhvPnVPygxALJL+QxKFkhZupPTdxB/0gaMA4mtBW\nWnRPXjkcU4EQsePUi3uA2MizS+WHgu9y7zXbTvINRfVJamqZouc/qIYNytu2\ne8en3w19AoIUNCD3lgD7E93Q3fmAkD0wBNI0Tqjo/Y6iNz0vCeHtqSwDsbqV\nOFyvZn6jyHNPhKqXBOjnDs1RfFvVgGOlsk0ImUQ+j4YRW7RJo862LLSZtNwz\nJSki/FYmMGsFdJ61oCEWbErowJqQUmF7FxmSmihb5N1TMbfFsK0LNvfxEDfI\nr5Bvz60VH+tEbsAtSENO8Ez93RTU+aSGvxpIvWChemcOPYHCzR8ng0H/jgsu\nQsGrhcjJsv2bPozDm/mvKrbS+1hL7PiLA4L/2VmxrzUGk9s0wtQLfMlLVdYY\nU3uZw/deqp8F9NlZszxx/glkAcsotHYpb47uo8AyJ1+KzLgisZuUkeXhTPem\n01SQVGvEtuHRQgFNE68vUoEpN/gmpRJuDy5uM5JBKiH+IiqtBUnwlxUuwaLb\niZQ4LraFRdsJluxqu4tp1MRFQdDSFPgu7A6rnZ1lXM6GrwUPsHSfolF4N4AR\n/vNp\r\n=fUmZ\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-u/4bEUHwCZlJmGgUjzErHjzUKeSJPAbqhbO+oRDzFj440WlfV0LzTCLvJJd0Ftg/Yz9T0qp93I3L29qLUXYxkA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDTgGMiFxuvTjM6lVQRIxS9AkyA61XreQnWlZ/r6k0LgwIgZ3HNyWabdF1Tp5qP96/2z6b/V+enZsSgsZeuoJcspTQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.352eb4bc_1527806254020_0.2769667813590828"},"_hasShrinkwrap":false},"1.3.0-alpha.8411929c":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8411929c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8411929c","@crave/farmblocks-hoc-input":"^2.7.0-alpha.8411929c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8411929c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8411929c","dist":{"shasum":"7a6fafe296dae385904ff4dde4e09321296431cc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8411929c.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbET6bCRA9TVsSAnZWagAA1p4QAIZSmroAo+6ul7C9jYLN\nwjUMuaeIe/IvHHnovCzjDi9xQ70HKomYCoYZxhtjhmZ7CnmVUYj1Brxr6nPC\naBbpQeJ3GwqWvaT9rU+AJiN6R9P0RbcY8u1QEkA3jYallfukmm3ktnxICpxV\n1aijBzQocXZAYHV7vtws31Exou0X81uk87msam5HqopuWACLpzr+ZFARF+OB\nFDy13EaTcIGTVyDOtAfsk5Eo4tUWPcPEPnMOoaJ26fo3k/GLKG5WPGWhUOb1\nwnd3CFdBIUPqQl+c1SKkjXByWivJSj7kIlSTXE4AggXFww05jkooVUie0m+3\nAZmlFggfhqhkKHoEKTADNvqaz3JMJkXCpwQkd+1PyBdXEQ+oRR1qc3/S46L1\nlhwRgsLdz6TPx1urxcNZgFPAdeJtyiCEh7TbQK6IOBWHUGIpezqs+CX273qy\nBOoReZIcPEaw0ix5JI09evlnY34BsupekNjJe15Aq2a2a6L/FfyM/88NLy0F\n840+I5hFTUBU6/0BVjd7KOZ4Nzws1qvYBt1Vf0nrLYMd9cOetp5O/D7IXRAE\nrXSXv0UBytF1mNyaqGgBueznL26eyAFNLH3RYxlsidiIy+FV998GNO3101Vv\nlUVSAnGFJ1ESunNnQ6xsmBG1zFZfD/1aePF5rHwK20BsYWRgHVBMG9IeHL82\npOVZ\r\n=ADG6\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-TJtHQhuZNDKEeUGgd3PzFPNRvgGMOkCabaTHcPZ1QgYelNdhSz6gX9UC7DKsy9O6phuKFHbp/I49YO3ha8IKoA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDTX4jIHqXKx8Abnsf6G3o33XJ1rPGA82FvsTJ60BIP7gIgSmAM/4DPvJNFm2wGDhoBMtBuicn4gt9fl4FebFtPCTM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8411929c_1527856794762_0.9138230476214342"},"_hasShrinkwrap":false},"1.3.0-alpha.e2e9b18f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e2e9b18f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e2e9b18f","@crave/farmblocks-hoc-input":"^2.7.0-alpha.e2e9b18f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e2e9b18f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e2e9b18f","dist":{"shasum":"1046a78e0579b8a144405a6006442eb726b3ff28","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e2e9b18f.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbEUj4CRA9TVsSAnZWagAA18wQAIV2Oa8BXjwc9BzvzWWY\neP4nVT5n4YHpFVyQdeORGeQjO4P2jepFqzyChSIvWfBrpDHHQvzxwHwx9wJV\n3cGJHFsFCsYURNtTH93o2+k46CRz2i9bUCXwEzSMt098gZWWuwSUcf48lUa+\ncyUFpR/+aNo8NEQDZqTt59e4q4ZFIbEd4N7PqsJmO6RmMBffHzMG625HktZ2\nfwIgaFoKWLmwy09nGsp7VWlvm98sbUdwA+9J7CsgquTu7ay0QNerM0rI34tr\nXt8QdE3Wb90k3o37bXjJpP7v1hcCG1hPg86f79Q+RgEZ5YwxGXA1cQUemTYE\nC4ECCAGDag1dm2+CHuWjs9jdDhG9lvogboaOf7sfr245xkyLhdvGaGt/Kt/E\nRIQ/0JBTL15rqcmSpvUzort0Z4QVCPZv5uenBBuLBw/v5BBt8TSHHDKPNmth\nS4JimKBFEYP8qaaiRfcxRij933L/RHFtQCQicoHdx3lFgbxW0+iCU213Pnoi\noDkofcHfb51GAtR/wmvhuV8Xu0nZ697LrpE0bmcOhOocVZW//i73OwcaWIT1\n4aoSjuwRqaANajBx4NyxaxpP2wpL3GWNe0O7CeuubpvsNRVWCRuWOmDUl3ig\njH1me4+uUsIsEeHnrwqtgQ0dgoNUug3vi19a0s+9JYpFA6/PslT+LRN/wnMQ\nYXTB\r\n=vkAZ\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-EYyKh695mbzW0fCgFj85/eFW7GICCC1pKXm/Pg35yQ/7LxNkP9ecPQbj/DXLApe86l86Tj9+9KfXVpsxaAv+JA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD57IqAFOymmzsz6OTGcAvSGWKkWiFUenD4C+rHshqhdgIgVH1VDeQTe2kls3MfFOjC4GS78VjI5nhl7NvdnyzeNck="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e2e9b18f_1527859447039_0.7501145571515675"},"_hasShrinkwrap":false},"1.3.0-alpha.5c70846a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.5c70846a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5c70846a","@crave/farmblocks-hoc-input":"^2.7.0-alpha.5c70846a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5c70846a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.5c70846a","dist":{"shasum":"bf47d61c97ce8bc9b938723314ddc810175d59a9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.5c70846a.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbEWBoCRA9TVsSAnZWagAANTQP+gJfF5BX41aYCRRKfhax\nxGuhf8305EV0FTKtWtwquqVQmVdB+VovybsVUIiLjAFv+BXEKdIuJb/4Bq5O\nEla82jQmSa3ArxxWOz6yLAYeiBOmqVFRrKXQNPftJe0/toaojvcd9Yta3TqC\nOtn0lRjeSsWO5CleJnYVxJNfpnkPsJ3TunUbXCbp1mQY8o8T3TVYdX4wpK28\nEkBEYQQJjIqA0Ke9K6MpJKJ8JuVhL9drFVaNvB9otwtqtjAtCW38zdk73i7U\nvQkMMhuRoY0ik1jl3yqsxN7lkvAOqrh16trpGQucJersavED36fdnbOSogmo\niCR0/nH49Ox4TJ7K4ulDUExJ+uCOLL8xGHxiAVRhaBH7QasCBP4/NYPqKinH\nRPEdEOGyZz44RflK39ryEaRtRDAgtYbcKfzyvBJ8vBMdoxCCYVH9OBCRMQD4\nCF84MnAmy9hJp2104lYPa/Iiicb6vz+xJ099nLA9VuIYBNo0VPXn3rqFdKaR\ndcKxVl4jHhijg+xs4ZKUVP/SXiEKP+RvzfiS/+HQ+nnbtxmRb/U/hNXjwMPW\n/7LlGiJlVUdtUlF3G5DEDy/KHmg/I7xdL4fzDr0Cuh/BHYSy51zfvrrYRmis\njFBNTuK4EdAKt9V1+Jtsleknn6tYn8yDj574q14OmTlO5zy3xcl17dwnMKSp\n97jW\r\n=Ivon\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-6r05zoZzuVLNzzqtj6bhgtNDPzTBB6dEoUXtPBQdfPu8rr3qjRSQn+1rC3Lt1LadOY/SGf/Ob89aT9igM2i9uw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD//5+J3DrtGy8CxN/l4lo8Yd/VLw/gdc3v8n6H1t6wwgIgKQG7JgFXUMWNtLnSyC72NtXNrEQSsoJJ8kfLqwEmA5U="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.5c70846a_1527865448550_0.23622654322669367"},"_hasShrinkwrap":false},"1.3.0-alpha.acc047c6":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.acc047c6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.acc047c6","@crave/farmblocks-hoc-input":"^2.7.0-alpha.acc047c6","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.acc047c6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.acc047c6","dist":{"shasum":"3435692165fbf2f7dfce22a927cedc2cb86b4d56","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.acc047c6.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFTX3CRA9TVsSAnZWagAAwgcP/3rQcRQ49fyYe4H/9F32\nb2/xtMPLFdGnpChRd/1afwtPjJGYrLJSKQi+0kPRhxAx5Fzg6mSiH7NfKHif\nAigHy/m0+Taw5+zdBTnAa8/mloDvEAotYE3OWoM5INuhZhSAQNtrdKr1EL/Z\nBHC+Dwm7IzTYUdlVJfbp1xyMpXR/6HXKX5tX9NxIJUkFYADDipyHJAhurL9D\n4CeD8kdLVw5mVPYYc77bibuH1pByocnaS7ojxZctqhZN0Rnl3kmLWYv7LlTA\nqIUSFzI4dkIlokT9gfdSa1bN2IXCc8TMXkmO47aZJLtkWmakYueODTBVHzRd\nMeXn2vFefo91nKq7943+8Q5t+kinRReVaGgI5Tq9ihUGdxMI7eYyuosU3Z2d\n8vYLQiUy66C5RkeTrCQIzYSuqTHA73w+tZtfYtP/0m7VNwf1fw3ER9ODMYiR\nFWEGf1lW4NzdER2lnpwq3CgGOdCz3/GYmKt6S+hZr+reH+ONsGvosV551+NR\nWQa2t5IWczEFiEKcNSjrt1/zl6LdK7gWGxtSGkObP9Pdu5/0rHeb1E5EkomE\nrDURnnbCOjBEZHq/A6+Vx7bpQBV4vjc4inc67e9SEVytmbQw+c/+8WSrvwgC\nEYeKrohatyNHyEu5aawoxn1PiDKtiFkHJEpKVN/40IwQVSP5Tzrm/hbFeyT/\nF0aP\r\n=FQJH\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-AUu/5d2ZjWWyktjJeb4poytDIZgsqsCVpKpuG1JHpa/DOBgCzn2oqh7hDB+er0vkwnYCLgRi5mzsYSE/hWPR5A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDE12vSq9HeTYxVisai6R6xLQH3WP276QnzzjsYG4KJmAIhAI9gq3cRfNlaoHLwxt7WlnmYGj84JFg20WiJoupROXud"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.acc047c6_1528116727148_0.6526429269844725"},"_hasShrinkwrap":false},"1.3.0-alpha.7831b2c5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.7831b2c5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7831b2c5","@crave/farmblocks-hoc-input":"^2.7.0-alpha.7831b2c5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7831b2c5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.7831b2c5","dist":{"shasum":"481cc2236ea39bda256f1fe89446bd15793e515a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.7831b2c5.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFWN3CRA9TVsSAnZWagAASK8P/RziVmz/YlH0c1cTyUBk\nzQq+ItQa/Uusfa5MwbbCLl12uBt4tu7/bbhQquOuTS35sklOzsHoMv4AWuuZ\nTQwrXIhOQZ3W10S83RUhiQWB4DuOTO7GZxUlOiv+jdKaR4UA9MW3JcJzWWFl\n5Lo1lD3EqIzf6lKfib1BUwCtwLlAw1bDMaO3BNnoee7YEtUU4GmXQzw3sctR\n6e5wU2SutHOItg3bUCEeaad66i1T8LvNvQ2eZz0RpaO+Tm8dIP1qnu9eNseS\ndkOrhXizwSTtD6mFb2yi1b21p7UFPnXnzO6W58lUEeg/mDLIgfvGQ/H1adUP\npZcnUeVy7VPyWIX546GP0AvA6mrA+SPOLTcqYMPiGIHV2BCZd+BM5VgyeNAt\nP/R4fEoJ8MvRrj4b/waa77daqgDlCb9Um37Gnj+UCO/+YFyVbo9/8gZ0n1Sm\nIbNuhHDrroHC2tsLVbnEgDLPwMaKgL+oDiB8muxRcNkQoGRr5I9Drc5VhWz4\n0qJuSoT2duvITROkeYciCoKVxBQOhz0PjmB56wPRZDVFhon3w8lj3pJ/kv19\nRs6gMSDQPq6KU57Omu5vlweB2i2etpThI3lJ3BxUFXAt6hNunUEuUt3GRb78\nhevkx7SOaxoyAQZNVNNmlO1dRpy4P6CGHkqOpG0T/zhlClZ5DPXoBT6NTZig\nv6v6\r\n=PP4R\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-MoP3WwLUEliS6bZ4rRDhZedQyUao78t/1rRe82mGnyStc/AQDzOHWJqelzfaFgTB9mNqgdY6qQrgnSshGWAl8Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB+IcYp+HSaJziwSaSr3kE6gegW2NIN9V+HDirJSfdwsAiEAom62KOKdEHD087YTOBkWZ1YiHmDGoJLRTpgMI5yC1e8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.7831b2c5_1528128375634_0.42899202058701325"},"_hasShrinkwrap":false},"1.3.0-alpha.7201583d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.7201583d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7201583d","@crave/farmblocks-hoc-input":"^2.7.0-alpha.7201583d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7201583d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.7201583d","dist":{"shasum":"ff636234202de26e3462d93481417f570b4a1c9e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.7201583d.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFWvTCRA9TVsSAnZWagAAcHMQAInOsy8RdPWW80xNaVs9\nvFGedELMGARMRaX2yrLhp8PL95zigPiS5VTznCXxqfgAXULn6IVoCpM6stgJ\nqX0aqFcgyRgAq+W6uT6tNB+zah6kzc5Witc/rpHM56fBya3PfRZShfrVeU1L\nGCoZnFCGRlrlH2JWHxpfLYveuqCIP9TO9ASpdoKlkm/Gb5dfxVQIpB4YpV6i\nTE3QCIzhWWCShyv3v/6xSYg+TR72myuEXj6JWXtB5cbKRx2yOJ9i5xH6u033\nT/fxOQUOwX9XmU9JdHewg0BmFJWuO47WwyAlD9gg02K45Hgjak9wf+jOPeP2\nasUFkm2xfba/P39nlZLblF2vFxvX0z//mzYeOadeQU6rNIZollE8eOkSNRAM\nDc1NSoSqeWS4sl0/P/ivCKbIoJc/9K6qN4OjeUKmsBfxb6EAj2wvicwSh8e6\n/Bf+tiFMp7WRjBUkdOXyQbAA6/heSid28vSdsqTV3rdKcsB2diDNrM3f+KHh\nhQDlmj4bPtp5Hn0xET7SMB0mrnieDhxeoCshlnrh843HCvSbOEJNLiYnNOKb\nQr7Opu9F0cdmPWMj9TIE4XjhOSpnuwGVND5ucRpLTosKZ06WFboioEzUVdoP\n+mhOZZ7aQVgP6uQUUCuoTXls84a9jWZg23EXMwc1U7G5XER8Cl3WsKQYS9ze\nQNPz\r\n=RagX\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-Ovwfp042aEOC4rvq2TOAbcL2SpAvPZk5ly1bkZutkPycFhyMJ1Ndw/Q8cGJwcVEhEWfdWW+mJ/FDEAP5UiQURw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnRCstO+Snm2RTDT7jQK++02VzAu6dMiHLJTEHpHA+5gIhAMWZbpn82JwmitNrZwIjHvKP7OaSvbC/pCy/OoUbtJsz"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.7201583d_1528130515414_0.37888920004354354"},"_hasShrinkwrap":false},"1.3.0-alpha.8b612f58":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8b612f58","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8b612f58","@crave/farmblocks-hoc-input":"^2.7.0-alpha.8b612f58","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8b612f58"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8b612f58","dist":{"shasum":"61d9193dd2b768d50ccf42193cce45f63f2b5b1c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8b612f58.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFatuCRA9TVsSAnZWagAAEaAP+gKaCC2d/QD/xBry7EQs\ncRUqPWWg2FPML6Jz6DkCB3VZlVmQFlCXdlnCaLj8aeLOxL0b3QrYov2Dw/ZS\natR3G8f6CqRUrFpsFM6MJ4dDA+1AY8Q2lmNVVKtWvARlddBy9XCf5RhDykZZ\n5C0DJvrYRS2pijXlehdC3jqjnV8rFUUcc/7jiDX4eNV34EY3mYA4iHIjJn/O\n2j8yj7qEyQJ1lDaGg7ZvMtaLP7npwckXV3lZ2yik//4/Ck9sZTtHg0jTltvQ\nSlVyF6v4PX0rh4r+QkNIjXVWgsVLBLb7YRAW4FPtZ1kTmEvs9wFtHch0wVxM\nTPUBRf4BSjdKWy953xTytkyb6afc+2xe/b2xptnfCqhch/jrtqp5+V6o4JD+\n5rvwCLBH7d5ePgRkB/LqSTyUvbdUrVW27zf7UfiJEDXGqa9C3QIWlUvpS4jP\nu5afXj4KZW+mok1pRbNylIWmpOIJz/i5e33psvO/cgQ+3QuKd7dIj2O9orBX\npTiHdBTduhgmJmRUPaPrJhNIxLVNYFHqzqgIa8eRi4LSa37Y1ZD56pZJruTt\nNayPBO9JqLaLieeUFJDfs1dZmKBBhMGkffDf3u9RyWMJ7UDqKA+bqXrM2xPg\nHS/7aEss7S9YDMUWq6Y4KGxlXGVwW93jBbXx5vFfXUPRxrpyM3Zpzj/A/iAJ\nPhlm\r\n=tAME\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-O3lQU98vwA3iMbXJQ9VGDyM6dD4PMBfRtTC4ErdcGr3DHAT/Xx+XoSioeZKjVd+aMgzPfk/KAV4SwYF3ixjkHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDe4ndr0z8Vi/D4cmKS/1T106FJzYbyNsDbe0wNGBobjAIgA2KEOkBX6Zp8Zh5lQMMsxnQX/OTCtk0d1aTux0lvumY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8b612f58_1528146791232_0.20436467457093954"},"_hasShrinkwrap":false},"1.3.0-alpha.ad2b319f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ad2b319f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ad2b319f","@crave/farmblocks-hoc-input":"^2.7.0-alpha.ad2b319f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ad2b319f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ad2b319f","dist":{"shasum":"6377498bcc620489ee28789a5ed9b02a11d9d18d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ad2b319f.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFa+sCRA9TVsSAnZWagAASYoP/iSYbN0iYu8hKRnLosDu\n1x72HISE52p5w32QxX9SwKd4X8BfckcgEk4q1LwmeheR+rekeExk9BYToYD0\nBAHmh6fAJU1BtjNsH6JMppT4G4xqWBgAP7LI9NSoQ3AqUSB90YPAW3FiAdVv\nwtkPzUAT28lceQ5urxHhPhWIeMAMo44lpTn8rZ6wnmS47kxUe12c3gt6dv5/\nQiXEpD+Xg+1pTTWuQD45781qtRmaN7KNFodKQNnOHJK0ccHD9L1xTdQE/m9C\nGj/+yLE8nHVntAd1ZZe5vaTQQFqrbKAkQSU4oNKiA06FH6ZD3FGODC2q4ml3\n1PUlOACZaWGo+4CjTn5NjLMWEfcMu5gOf/dByEH6kkfeDjt6b+ir11WFyg/Y\ngYNh0zzEEsZyC2scmSBNPyBq2Nq64zLSuj4wSIuyqpCO724y4ETpQC2YyWup\nnRxuEXKx01e2Ui82mlDrmjs7NzBaKps4glN7NRKVEE12fyhrG0fWTOAQfN3S\np0HdLbSn3iQSyrOmwvMoSNILDh06Xdt2IeL/1k4RaFYT0ApPtTMcWj1QRe8U\nrLbVbrg3j9o/BnzFHaBCKnsrgC6J3zHfUQ7lX11SxZL/nMXwrP/5cswKrtJ9\novkoKH2blupbVJ8IPrjo7Jk09fp4AlYb0Yk9biQdX0eVIx73PkN192Nc4IV/\nZEp+\r\n=Xw7/\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-yBNROG9eBdQh1ey2KnCdo4IX9JxReHal8L42nSzoJqa9fbbM0cS/ZR90XNKxmlsgRavzGy5xBhd8YpsU+2FG/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIETclJDWiNVNhlummsBvwvFbbebPlESdj0TiblaN6MrUAiEA0vQrKlUx9z1BdGB+6WYc3CKreptPf4ThifufVHmz7oI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ad2b319f_1528147884451_0.94578862891996"},"_hasShrinkwrap":false},"1.3.0-alpha.0d62d4d0":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0d62d4d0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0d62d4d0","@crave/farmblocks-hoc-input":"^2.7.0-alpha.0d62d4d0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0d62d4d0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0d62d4d0","dist":{"shasum":"495cf890b452a451b46fd87244450316b16742a7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0d62d4d0.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFzWiCRA9TVsSAnZWagAA8NoP/RPbF9S7yRFtYj/c3YfE\n1a7gPPLlt07ZMv7N/IUDRUkitVp02xyV/VWfMzEtO/xdM0lCuUm9MmynylAZ\nRCVxkh5Gu86VR3HsS6c2SJarYTkOosx+uoPs0EUu3BhlQAadb6YYkm0I9NI3\nFtW2RvK2ZzC5vjL+VgDpFG+noA5mLLCXlsRVY4iOM8EtTpElggRtEFJQsmNM\nNABtZ9KNR6B8/mGfF7udiWzwCSwUPjH54GEW2Nl8Dk828A+PFVNnyrIJymHC\ng61N0f3ujJh5SpJH/vdCYhXsvcDqFUbvZoLfxXXrdTRl44Cn+YVatO9ToMaI\n80FhMOvBk69slwhf4eIYVDMJENE8zzP956qlBUXr791HkTbPb3nhPtonwBI9\nsc0Lphz2zTvnbcZ5ZLJf4fOOXtsmzuj/5np1wSSg08h/2yHRUTzFYeZt4r9b\nuwn23kbMfwmGFeap/keGlyxRmkiTjjnkcqJ3d26aiYiZp9RghtkplAA21ecD\n+bzfY9nLJuPCPMp1MAQR6X4LdurHOf1hXI4/NJGECvChhtW0Ex+CrfioBELc\n5kwX9sMU8TWV2LBF21AjOH879R59NV4ejc9szBGf+wWNSf5V2Jk8CHPMD2Mm\nlZEmfEMTkA371olqtOVO0fJamJJRirdOvZuMz8Oh3VQKc0KEh5LEWzFaB1j9\nthC3\r\n=nNNl\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-5XdKT6yx4gkiudfQFsh08lQ/DWM2pJ3/5FxIe4/2OycNTlCterqIyv/VTtRa/LORs0PzbTgBn36+Az9iJAGTDA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIFNsdkHQRfNhUzXk/BK3s6SGB0WXn7XO34IyJZw+kmAIhAITZhhEJmBzjC85TECVPN3AIwFsNxtNn6c5Tr7ojeLVu"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0d62d4d0_1528247713325_0.1599987139263368"},"_hasShrinkwrap":false},"1.3.0-alpha.8675d26f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8675d26f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8675d26f","@crave/farmblocks-hoc-input":"^2.7.0-alpha.8675d26f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8675d26f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8675d26f","dist":{"shasum":"a0c66a5bfdcb6b3e9733996d22b68ad8feacde30","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8675d26f.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbF9tmCRA9TVsSAnZWagAA6okP/RFvdLqiW+tWEuPhPM2d\n+Ao+k9oaCGiO1SUxrNNJ4vF/GuKOJOFh6C9WFAAbdESPWs+xL1bcuk9XSItQ\n8pYW/mwEFm6MUMZ++OLYUFmHx4ypqL9lQ/J23hgo3Md07Tu5XHbPm3s9FNlH\nAn/yivljx+zPeKGI2JAGp7ttHJ6vRXUDe4PUURuQ8jo18ibMRx4WFg+PeUTj\nVFSGS6XNN88zBHWBkpI6+4NPxfhQzzbxk75FFDNGVCVnifMGLhsDd5V/xV5Q\nImGkm0C7ULGj95OhCRHzv1ZB3AckGtWfhkE0loTy8Vor6P8gAEGgMd3dK+RA\niURw9DrCM1h0Baf6iVZcKNYwkkSXTwLF4J3GkMYilk9J4ngtcaLSH37iY7WW\nKAAQpybA//A0pAZ73PGGF5XLLFVYWC7U5Ul5hnW16Yt+WpNxAdh0fGOrMk6M\ng2KXxomEZTx7K8St/0/2ik0xX/AVsvjk9G3RI6AqQOETZZ93VCsndtEvhgjx\n0l2SXHTiaLg9AeTRAwk4pFUngKde7/5WalLkbFsZJYxPvJTKMyH4TWm9KOra\na/xgxgS9sqi7MZymDiag5kPs5BFfF3rJTGl/Uwgsq96zyZ9t/0nKtYyE1yvo\n94m4Bi8OCuJjPZTN5sfDdhgHl3y6Jf7J92FbBcrggasq3q0ipReOgD+J7f+M\nujhZ\r\n=nD7I\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-uxdBUERpJiaL3n7KadaEIJJQeLMStTP97otTnZXGylmLRA+8LnH36Bp0h9HIDW+iy2OLWfUj2s5jhsB2I2V6wg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCvTc6UyIi37ijJDSiI9JIaPSH5IqcFUKSpwCvfCfTn3wIgfnwOsIeS2Zb+qWfPK4fjSf39+JVEKfgCgX8zh3UpJ7E="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8675d26f_1528290150666_0.7986100824683577"},"_hasShrinkwrap":false},"1.3.0-alpha.1660e930":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1660e930","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1660e930","@crave/farmblocks-hoc-input":"^2.7.0-alpha.1660e930","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1660e930"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1660e930","dist":{"shasum":"e21b191dd53b982d820192df5e93b56a5f7c3b19","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1660e930.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGAE1CRA9TVsSAnZWagAAv5QP/R/UY7QzGIsQ0Jx3KDYg\nNCPss7LpzMPPKwFIhkOx/DshPrvYTEgYY+OJrFYgXBWZCm54l1wNrh5GDUa2\nE77VKZZjaHccAw8dcGPtQ/HhxPKveRBrqaMd2o7cpPSYGS1Y+RVUNGHF3LJG\niYfya9ifRKBO3UZxP+PxGZ816wXHzmoUMprGRSXe0PRU8KhaOp3ac4w4bm1o\nqnYZqvmEk+a0aaJfks8rvEbj19fXHgutoarEBInmqckqy5GRmKyooBXYxxE3\npEbJ8F+054FW8EoS+/74pOOEdUzS9SRky9zS5gQR3tJoD4jo614i1zRwwZnD\n+evT+bX0gW8fWcMvUTIjm9SL0ZjZxhX2DjLMeuG6Cevts3mQD7F2bWtuO/22\n125qjAeHTi8BN2YSrW8dnubAWU0V6uAcH4tDxeDuLaSpY18sCc6J8UBYuZ37\nLB++OfVYRGBZ40QYVSjm9nKiw7nK6TIqsMOeUuXhoVLXK4m/jYcj1J7c9Pv9\nd+7by8jBOQA3Jd8F0T+OJ4Y7cFt6RwSEEmTyA2fDRT4EpxofBCMBy7Oo/zTV\n0yWckK11cWH2HFZY7cuZ3jq6SSwf6dqza6DS1QNFFLVwCbUhnHT4UFCSMETZ\nPWfcfLpB8s0F211rMjCLpCMCpnvz8TpBE2Efhkh6YzBClt7CGM0AfPk753Ek\n+GYa\r\n=IE8P\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-aAFdhiciHf5xR3ps4dgK9sEj0vUcUTyFeFynuw3OhzyQSFJvK3+38lZ91KbDoI/9uBQKtmpgUOWhfjOOJin++g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICkEUl2+d+PnuH+qn4BPV9Zm4u/p+BBhv3EKVzZCsentAiEAjaj10blStJE7ua6iAjWHrDTfi8702BkFaZ6hewQbH6o="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1660e930_1528299829252_0.3099444828793321"},"_hasShrinkwrap":false},"1.3.0-alpha.b47b1f3a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b47b1f3a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b47b1f3a","@crave/farmblocks-hoc-input":"^2.7.0-alpha.b47b1f3a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b47b1f3a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b47b1f3a","dist":{"shasum":"d9eb2dfab61f15b3a4cd6163ceb25a9f4a70eda0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b47b1f3a.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGCpoCRA9TVsSAnZWagAAVzUQAJAc6V341seiFccUrFth\nfmzQmrBj28jwe7Vz0UMw5muE+AzWJVu/hDZ2pplNgb3xZzmHo9/Y2ov7/qAS\nQE3z9JyIFKYRv+0qOVDktMcq8CXjpN9QqVf3bmdEWugyDeorl3r80/sksNXO\na8/vS5F8SsK7eBkY1NwQa95NoY+DJyNv+NhvDBRdNnkSC3yPsAKIN9F8H4uA\nrq6AdvCMQFl6AusnPpIjFiZBLnIVUsVCRL2AP4zllUL6OpVBtgNug32Gdsd2\nr+fvT2pV7WLDN/QyOgI8el+h6449yeHpu3lzBLQczOD6wezZs0eDguSdvAnR\nVMNdBvNfVACAa2mC0gAHbODWeeSyHbnlBVPjzXFzJkWkbjgKZB5TJ1C/I/Ve\nAkq8tLDs5PuEi8Ax8WhuRzcCasRqLDEMZWi/kfp/toz/dpXx77RUnhvs+eOo\ngn7CVJ5vQ7a+0fRX7HAoOlxZT3dGCmhqwlmuZLepwlwJe5gFa/opMVq6WLHO\nWIhTNZHenbPnteCZ16x+QdKaUvXCL4ApL7AoI6BtjiCdcOVAkSF4ZxKN5Hqo\nEADJorP9Cy/bUOxgR28XR1XQiTHFKgRSQ5lSbK/bAzzr46LFMSAZIe5gnqxn\nhqlTg45OeEdCt8AQFvqAK9Hv6zGAfa7ce74ipSET9n3h6+W/aFFTPW+hx+MT\nCMl5\r\n=jZCN\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-kOkQAj7X4MSjECFc9C2a2w5mNFMJdKqu9mYE41N26I5H0f0c6/5xciW3c4O5m59yFDPVmL4GRu3P5RHnHVKXcQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2JqNtBKsRcvtKzj0qQl+zxewq5MsoKBl5aQ8HjEYnyAIgAcfwxSU2oVcnmMqB84yDm/xNhf8qL6QocJPgMYtW508="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b47b1f3a_1528310376032_0.2645121362628138"},"_hasShrinkwrap":false},"1.3.0-alpha.0d24ee07":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0d24ee07","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0d24ee07","@crave/farmblocks-hoc-input":"^2.7.0-alpha.0d24ee07","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0d24ee07"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0d24ee07","dist":{"shasum":"861c3be0f6557d71a58fca01596d99a122b2c035","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0d24ee07.tgz","fileCount":13,"unpackedSize":26193,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGEumCRA9TVsSAnZWagAASUsP/jvw/J/39HApw04wYLYx\n2h5Uf41CukegnP9k2JaUxLbwn1K0CjnY3sVGmS9+Lx7fyK11pIv8VwtSAUBr\n5AjWlGrM1afbrMqIfMkAQpeUCqUVbvvN7oS7xP5iKK5CJ5q69zrz4N23fH9W\n4B9emOezrvRoSIb8OZFX+OlmWQexvlAGvhNV0Fug4rqpd29ASYKAIOPIVGhL\nXxWudpHhpf/IBjw/wX2JBexlp3/Agu8DNpNK3t/CsZbFQ0+Cs80Ea5sEc7/R\nIrEnVy/0jVKqRgTnXGN9H9NimWPzAxtwgZS3yGTvoBQLHKVCtruFpCIMxH70\nLl4iK1Ug3aHI4ZM70RbMd3iTm0sdhoQKJAMByprk6ETYLFiEglee0olND49r\n98Qsb0tA945ONnIhyJNNz+WLVcPKIINocumw3Q+5U7eq1wavCP/y4h43ubBQ\n1FoyIR3QBvpN6wyKUNWGJnEulB13Sn+y82akZ6E95MQVNjD5poSi6ChQuiV9\nmqtzphW2NgbMyN9b4/LbNlUnb12/VJGZ9nTSAadwebJFXV+6xdFu+OGY8/nz\nNjJ9mijHMxYovku7pp2Soi+BRbJIyy9Vczm5lEH/2axnFV2cfwCvk77MkS5X\n0cRfgZhbRDfeRQaZG8rVjpVot25Y2Pcfa6pv/twc6Jh/QPvePcItCrV3CepV\nTI63\r\n=wfjE\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-Xj6BfZ0BWDwVOb1tE/+l+smlzziMJO3iWVCSGRIQWyE9N75i7f7omcLT4KHQW2iXmM91qEzkPCtl2fkl5Wb6HA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDY+GyT27sUzZu2OZ94I7p65DHFbwRZnrwJx/JpHfCr8wIgYAz8ifmG3KP2B5qqvqI8gxEtdv7Qmb1U1IyAJVm7h0w="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0d24ee07_1528318886393_0.312132104295785"},"_hasShrinkwrap":false},"1.3.0-alpha.eded803b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.eded803b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.eded803b","@crave/farmblocks-hoc-input":"^2.7.0-alpha.eded803b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.eded803b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.eded803b","dist":{"shasum":"bb628f398f68cc8433d974b61048293cf6abb34d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.eded803b.tgz","fileCount":13,"unpackedSize":26193,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGFUNCRA9TVsSAnZWagAAtAcP/ReZfRUOhe/cX40SL53Y\nj5CbjVRMBbt0ugr3IkujOFidylN3mM6vuVvAicba/p1syxnaZXe4HxOmiHbs\nQXAixchnO8ZjyD+p7h1BshsU1CqrklL0N80zs7S0GbkFxCSxOdOMQOAXTphn\nuvsiZ1mPHrqr1d09aXL278X1rv5eKfL5TigAy4qtkSI4upGJMgSS04m+eUeY\nCvM/9FsSbt1ORBRyCYWre2o/d+EaUDlwwSv77vrDLfKXzSkT2xRYcgMkkqjS\ngl3vxFu1xbYefDjdUK4O9e6jDOrOe6kaTSzFojOFhInJH76WNQhIGHUNWLUk\nXoGhlTRgWIRe2l25OCzPn7nDBNE8CTYuqi/qjEANq0lgIEWIXXN66wrs50ov\nRzMHWDrBwMa3n+Ni7yK5RjQRF302mC5qLBbkSk9zZRKld4FC+uoy1TIutl8b\no9uBOGMEE+KNqsmSqxPVYN5RHpkYAz1E5IJ9Lu9dsxDrj4+Zl7bYrKNgUDEd\nGpM9gxK9UZj6RdbYzeNs0wWQisfIeZ4rhTyeh2zw/9dYHe96/iWB9YXNA0FT\ngYKbzvoqPLbohw+Mxy8khW9IBABYqQBS/rn4TN+Rgq9vuFrj06Uw4b2GQ6C8\nZ5Vh/Zk2EsWZTZY88fiaOv2cLDYBcDETuI/KoqiYlrCA6utAtis9RH/PeSla\nM35S\r\n=dSRQ\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-BThvownfO79xRdOM3M+bmTqKMlH8oKUn3s+hvJF4UatTAPO+WHaYYeQcFSEf64i2resAyjhYeRB/VpwQc/4MVA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDr//lJg4fmlkaVrQ4duUAxuMON4hhYOaQyqdy8vWZ9lgIhALDffNLlRuTl5xzJmnovGzU7ywooc/GYO2K0Q/pw8s4R"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.eded803b_1528321292777_0.6664310491375682"},"_hasShrinkwrap":false},"1.3.0-alpha.950ba985":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.950ba985","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.950ba985","@crave/farmblocks-hoc-input":"^2.7.0-alpha.950ba985","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.950ba985"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.950ba985","dist":{"shasum":"14f8bf8ff8881e8e0688d2ec4677d0937b16cd05","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.950ba985.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGHfCCRA9TVsSAnZWagAAYtkP/jQzvsbMtBH/1cACKezw\nFRZ+l7ytaKZBHrO5AcWBozTQjorMYsTIsDks8B8MO717ZxHBp4INSaM7Z1iE\njWTIeFJ3A/w2DMl1mTrRWNW+CZMgxjZ+j7FfWpmHH99kc0oFmVah9SsvVlZn\noTlUtVt6sCyo0QnD8GD9FmzIREiA6dEC2HAcB6OcEyxCxVS2kl0+fDWNqCs0\nelJamz6u0iGMvmLnI9EvEPhNwc1VLB395f2QBc6JyeuZk3BsxONsRht6aZsT\n2ZXhEK75z9X6wVnrCNxrrDj4m2wYPKzuE2YLciS4U2FMzCo20agi9weOGczd\nQLKB2vqDV9KYfCOZN5Fy5eknofoQE102FA8v6C9ocnBvJVNi4OsLAegCiAUv\nitZm48ksqmLQlv7vcpDA8yppXobLap71trpCSHuhk6hf7hxvsVE71/vXZVPp\n9B96wzeC6gZpeeRIplDpmN0/8HNfBhEOFqDBj1axAho1LrSn3X+sHWAgUyIX\n2h9LWKw1OkaGWhTcT7FnfG+hJ92gY9jkDhs/pF4F9qyEmejHcue7Cr0ucS8b\naSVU19wqZ89zTTscpxMnBXMwje8/kvqT5BBWBMkiCBAhDEY9szS3Z1ZxXQ9N\naCdMLg1sIZM1pZyJwVbvqAzipoDcSHQ0+R+8cKyNu3wqlo9P5z8BPc4d8/Px\n9iU1\r\n=FngG\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-fdCbq1UELkk6QC5Anlua9omNqlm2K3us19tgdsJR9Nhgj0GK852gseRN3FcwKT9gr85Vg0S3KmxU4jKu/jxwNg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgfkrHctlHaexAdH7t5h3YKhH5nHdjNI+iH37HnmfaPQIhAMC8nhc16GHJJDjCnB/M9tUwfrkPvQQ2+inXDQtyPbn/"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.950ba985_1528330178356_0.6859714591339345"},"_hasShrinkwrap":false},"1.3.0-alpha.78eaebdb":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.78eaebdb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.78eaebdb","@crave/farmblocks-hoc-input":"^2.7.0-alpha.78eaebdb","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.78eaebdb"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.78eaebdb","dist":{"shasum":"f3ff963f4d16f14f44eb62c6091e33b74b8a235c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.78eaebdb.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGHuFCRA9TVsSAnZWagAAvhsP/j6BSK0sVLOcIxJxf2TX\nTripqLD2Y9yjxVU+ttf2BChXvdieQncpa3nXIJkwUJrl03AqqV2L74kzJbaO\nXmTNAnD4qo/+Tu61gBa+jg/gS1/fRPVT6Ble7F/mWv1tE2mWvO4EWWZdXoSN\nOUS0BQ8g4mr2KhzefgHlSvMvWlBeFsCbLaW2UGxknnzYUhbY20wFHOMydtT0\n3K856YJ+22hJOrkYjG4DnAmFW3KA2JUbLbt/5rVOJvgdJTjOZqLmLgQy+5JR\nrHwQIAuZrONo3/9lwXQ5TvhEzoTku6vJo4mOxXtEMS6x7oP7xpzutzNenXH4\ni7n9rm8FeQduHC47K5WDgEnCTuNQt+/ODi2kqkBRGh/dtfQsQWFx1MCyUlBM\nAQjjJGYzTA1h6SRz9Y84Z5Uu+hDnrnWOu/uCHnbGAPWKaqgvNJwWaKk0vT1n\nwrCPlN1hGkdWugWOcXH0c3UWQ20VKSEGwlRIsx+iW2lNzfwVlndQdzH86yUp\nFKjD71dUO6r6F6HRpKiv+gf6z/sn1eyz/LyFUW9bT4Mt+eQTJkTxicaSuhEz\nO8VgY2QXeUV8k9n8wzF0dV+u8LRiL9q5g1ebLNBnxrYsjt/ET5uDTAAuLdRO\nVYNZao2296NxFFOvZNhw92ObnaTerWhSDr4FNjt4sMbq46v//iDBkg3DFK+c\nLvN6\r\n=h+2C\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-zv0eQCNZLaf3uaCuOvk1Y/gv8slvn+MaeCQVVDtbIBi3Sc5cV8QSNLKrhnrkH56FwJDWNx09T+uhEsnarYvbYg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBfJYfFmdlaoUEGEwgxH1sKC82I55zpSoOiPoeNtRKKcAiEA9gdJVRqROEyRJw8xj6d29kUMj55Kas8Hf4jW9TUSLHY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.78eaebdb_1528331141600_0.1935762545474471"},"_hasShrinkwrap":false},"1.3.0-alpha.9afde923":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9afde923","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9afde923","@crave/farmblocks-hoc-input":"^2.7.0-alpha.9afde923","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9afde923"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9afde923","dist":{"shasum":"67d31b1c5fd6d5d1969864bb9803fe8510cd67ad","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9afde923.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGTBKCRA9TVsSAnZWagAAR+IP/in04rT15JefckawSzwa\npkeAO0w/EX1Vf6z0ogs2ymfb6dRO8gWWW4l+9WriD8Y9oq8phRFqfrlXiYLt\nvYMB9Sa1SdUOO6FmblyWiKMs5NBCJCdpiTZ+2z5gYHG2c3S4nmCpj2ZItS6y\nmTefwpDu8J7JjpaJDw+f9XYHBqE6uoJJBt0wsUVYFEnt/Q2lIHT/amO74pvb\nkVLbYH9sjoHPt/oXxzVIaxOHbnH1LdpxWjg9req6FGRizB7PHR+6yRE3rNZ4\nuu/0xGMiFVSuInXXsAqqFZ0G6wI3PlYnAOOkeG80gBSp+wvYvTGx3hlxkPF/\nn0KtC+e3SUrGx97Pc/+tJdB0KAR/bq+lAn33EdEC1rvTFbpCcReZha63q775\namV4Y8buoIipPNarKrO39k8qMK7NiCt0cu3Iq3XvxFShk/jJJZuT/WeCBo9T\nru0dIX3XoVhBnDkssmHkyARoJO1x9mDDLep6gPsTDMArq4Ybucv7OnG7r6b8\nomjf/d7VxhW2nRyDcvEUXrITEDGEA4fpbFiPvDHqmNmqBQ5+RW7rnSZsdKe4\nsoWvF6U4N8mi3yzKImhTw26YBDpTFywQludEZvgGT3vPoZp3lWxKrRNbfKBI\ncBFYGhupFZWFp8hrLiLSgqRwrMjSoVucyyqLorT+fptsg5wUL/CAPY8VX1P0\nLgEg\r\n=F6ED\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-Z2SWiEZS5PxINkIFC5/ckpcHLBeG6kjBSJNCI5qyEL92GlflDQW01jCiVEMAIzY9KLAkoVDM4uMU0r8iIfoQaQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMTrZm5NGXbSYT6/vLMHA9FwRSpg6+j+ukQ/gX30kz8gIgbIhQazpX3rA53OG2FDjPVgb+MEv1hPQXY0M3ZHf/TYQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9afde923_1528377417867_0.34733093378982405"},"_hasShrinkwrap":false},"1.3.0-alpha.03c69cf0":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.03c69cf0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.03c69cf0","@crave/farmblocks-hoc-input":"^2.7.0-alpha.03c69cf0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.03c69cf0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.03c69cf0","dist":{"shasum":"cd515d225f5153a40debfe81cb4a4d8964a90ebb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.03c69cf0.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGXGrCRA9TVsSAnZWagAAGiYQAIVrHeqfD/+z3J+1gEMZ\nGlIWCJRkDKgbEM601srdBs5MLQz/A9dd1fm2zgtQP3e416d1VVr39MqMEIiA\n3bHLESI5jr/RqAcijmDCxncNbXEvkX0qFDZSPt/Lth3s12WqmL/W0Rc04cUi\ndqVm8MNnDYFzgQtd9lyy/IBrc+9vUYFG/fdN3x6kLIg6ZlJ8+dEX35f7oQ8w\nv9TnyBaoY0UktrT88u9Gr3jWJ+4xURnSYpsPwZgFyowIKIZ6XmDvqTzfMrVb\n0VvTLGN/1yh7zTM0PR1QDideeizf8hNMMu/iHKlQkRX+V3l76Mcaho+oqbFy\n5QsA+GU4ab/9kLSyXW/aiVHjWKouFhLPOYrUj6ZHgUyWfRV+ohW5a56rd707\n9x51hcpscowxgYXirvsYVnER2+BxCtplTsa9Ltc/srE+Vb1UmGb58pVlSklK\nayIUeCVdc0QiyjWRMV8qy8GALMxT3OwabDPdZmy3tW3orqriiLKNcuB2yRxt\nhm7P6Q6c+kGcngmalxSCsrLGkiia0VbSXutjTXaSqBH4Wh5h+KtBmtL9CCWR\nm5CBVllVCuLer6I6FEDj1l3o0+dvpFDTsU6MCF/HHkjpde7o3jzw3/kSohel\nBq8YCln+PJLVGHwpN0/nC8MRA6/iRjHNbYoasc7GdXMWZxGs466qpZFPhr9A\n3VYg\r\n=ko+I\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-3efI4+Q8GXJYXfL4kKVpdLiEPr8zBtcGNja/aVHjTa1b+mv8B1u18XErOhyJw5vzpC1QsKP1f6U74NIh3lifxg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGn7rY9e/IcDfhqk2tuOboVMyclMT9RUhV0gkRi+oZ/wAiEA27JnY+UMGYLMukXPI2qQawB8hm76I4FyzS/qrRM62SE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.03c69cf0_1528394155508_0.8030329143110908"},"_hasShrinkwrap":false},"1.3.0-alpha.a433646b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.a433646b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a433646b","@crave/farmblocks-hoc-input":"^2.7.0-alpha.a433646b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a433646b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.a433646b","dist":{"shasum":"2157c839fc766934641f89e26c433957d0ce8fd7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.a433646b.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGZa4CRA9TVsSAnZWagAAcd8P/jbX5w38ekE7AtdNjAh7\nB5sEYk1VcMD5lIMtKZgTHqfEJ6ZdLeW4yKSKcU87txsuNNWpSuixEWMMVphz\n5UDnL0XDh/EZEuSJ9JUKG6bvmPQIoyGFUE3GJiDfcBSc+XriGRirakYAZG6x\nJbgnHSIfY+D/a6qmkHqRQxS6V6nshHXND1KOAbHBlwv/GMaWYYtW8gUJy8um\n/gHYQD2aTDK1Wr5ro+S4ENQA49yztACPNv0AGrppYVdlSORCxI2f1jxseOu8\n5H4cdsvllfBup3MrVm0pzFy1eSllPZSa1ImgJYDWcGDfFHyYWrDyD4LZ075c\ntKhBpTceJrJt/8MukUMEmZf/HwTe0kI28vaMj+ho+LH2qQROq+rnTJ+FAje9\nbAm0hn6IX660ljrPyIQRF/dTY4Fw4EB9nRuo0b/ZwVBQGQYDzHAaRhCeT21C\ndhuDTuvKUkvycpBAqXk6IORX1G+u1myeOZZRXWLPFf4X5F+d5/d2f7EVqVc/\n3Gs705lf1CNsDWOOpzkwNXQ3acBmQiSMwlD0pdcaME3GOkwgcaJMH3i+kNzP\noQ90gqEiRSEZIEFq7jN+UrtWbV1Ys3iDtKhGwl2iwXjwE7pe9texok532Uju\n/jEBlH09edqWNs8jr+moTSUQLjMHlDCnDpb8vN8k1ZtMhzqn6kr1QseFzTeZ\nOe4u\r\n=uF7y\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-sHvyl+fUUV/lG40cJASjukcr+sIkAqXBYV2na5ZHuisjbhpwJbfjvzK2dSlT5lxd3Q8T5KbrjdUMEdqTHqdxCQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDWpCZDxj5hu/0ukokDlucCitRTp0VgKfz5ctk6E53egIhAPnodgtA/ywg+jExRNIElEbeJ18/A45B+frMciX3TlEv"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.a433646b_1528403640045_0.5418130678534014"},"_hasShrinkwrap":false},"1.3.0-alpha.bb4b64fd":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.bb4b64fd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bb4b64fd","@crave/farmblocks-hoc-input":"^2.7.0-alpha.bb4b64fd","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.bb4b64fd"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.bb4b64fd","dist":{"shasum":"96591893066ba67eeaa63cf41e77297a7f9ad869","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.bb4b64fd.tgz","fileCount":13,"unpackedSize":26332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGoMDCRA9TVsSAnZWagAAoGcP/1XT/RTk9hMzTOV15ELH\nwIeQWrTm9KjXDVBuLlMBNi0DKsbwGva9mg6RqXx4suDkk681A5c5e3tAnGK2\nbzqGET4HmGn0ubllpP3LrDRMkuWH/1GZN1F9yVfMVa6skMn9wg+UzEKw9/kJ\n7GS15oIq5ed/XzKGsyLzkrjES03e0u9oMYJ9ohc3Mij0DrEvu/EE8Qouic2X\nCHkB3uMBeqshd0KYHO71wFN32Z7g3QZPgXV4c671/44RL98ZCqhukaoLoqB4\n5/RLJ8iqlQ+in3gobBXk+ihrEtKnVOtREprtL70ECZ2MPGT3H+6dPdcPDxHu\n+wTRv+NP5PC/bOWSznRQRurnKjZcgxtaaBE3S7owrmFlMtcCnAOyaSCP3cnY\n3N4Oc6f8PXCaOFpRBhzOe6nrWehIA+EKcADxb0SodWT7AjbmOgC4/0QrZZ4k\nrHyWCySWg6eZvEzzaMaGWV9pBcx57JUZhbLKMmn425PfWLbIqWicwpNNAKlO\ntNfnvAtVgUeT9fOxPcuatp/kKlOhVDMCc7DrwpevVbY9Q/3a5Dd3sHBgoTxa\n0uI9Yx8KmPYS3v/D9CJTeaIf8WtKCr2jka2G2DZF4REgaVXbpcI1SWGgKHGr\n2q1O0h3ldVSMJnmRD3qSqb7g5uclcDETSTjAlke4vEaxfADmfSWu4SAIsOeN\n1k5b\r\n=bE+A\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-l+drV7/BQfnj4Zj5/8v0GXeGIuFCzuvEFXLTC0M0TMgf4FEsINiJft2iJuGS1Jqjs41B2AR31Pz4vy+gXS+vnA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXXhMpWW5GrppLDRWzBAV1MZXdxU01oUJtEEM5rXxamAIgYzrpdjq4C66qmJfXdT1AM6dWOBjsCVTU5/5tuKpkKiA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.bb4b64fd_1528464131078_0.06507349644410332"},"_hasShrinkwrap":false},"1.2.15":{"name":"@crave/farmblocks-input-text","version":"1.2.15","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.5","@crave/farmblocks-hoc-input":"^3.0.0","@crave/farmblocks-hoc-validation-messages":"^0.2.3"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.15","dist":{"shasum":"5ab8be59107249d377f86900dea16999b0361070","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.15.tgz","fileCount":13,"unpackedSize":26232,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGpKaCRA9TVsSAnZWagAAjFkP/2MjvQ7DKnJxj+iA7WaW\nuzaPyezb1tnG6rJJtLdSYsenm4WGCVjx04tURtLuFS4zOV1QcN8d0Nkme10W\nPxp+TWYlEvQKUcfkgLMJ29qrnrf3dVBXdKn/tOVpZ/U7taefioC8D3bxQFVu\nea0+fcKgtd+qsr6gTb3PILmj+2FJD1b7RFQ7BlmtKEezBR8zhx9c87M1qLvH\n7wAsuL6TCi0Fs112h/t+SMux6Sk3Kc1PgQNujYUFJbIB4yaSzJYhb4qXc4vt\nkwF542K3oyFAvPwGU00EGst/MYgIy/+bRKGYzITfZP5x5pZAaXOCSI8ljhp6\n/Xec+dCK+9lRAu6jUzcMYS4Xq8CJKRauvrkaoN7oLkcOoNcdNwpTlNuVRrA3\nT/f2he1to7JJnHMJqblCxGTearpXoII9E7jxkhguJgj8s2AW/dMx3v///DI9\n8CaPfGKjrDyuhlGu+RhVJX82KlNe7TDuoxpC6bSwI5XZIw3ZulVJV+DF/GvM\nwjJe7Mf/J+mHAywLKjGVi6lXpfwe2f+n7iK4z1McZC5ysWe+ljih8gbrT+id\njeSNk2PHiDTQXKggpfqfkElR64xJyz1Vg+TNmQJOk6LL/mzrSXrwAHWuUuWl\niJuJsC53QUaL+AI9K2KJ03AXH4VFORT+YIukOFs/MWoi7s5hUlpeDBNjQMYG\nWe26\r\n=I39r\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-58GTVpPds9blU4Ypp58L6gbTPuejEM9aR85bINg+Hh/dzJPPMQ6qa5jIPlO1/ZWtn5/98MT1rb0ox1MSlYM/sQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqg0spDQF7VpQsbeK9sPTz0m93mK4C2pfBQu2f4Y1gCwIhALVUpJEb0GwIwQOMQrsinLq1Mp9N5Ujrb1DvP2Ouw8Xe"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.15_1528468122071_0.0673063972234269"},"_hasShrinkwrap":false},"1.3.0-alpha.d8773cb2":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d8773cb2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d8773cb2","@crave/farmblocks-hoc-input":"^3.1.0-alpha.d8773cb2","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d8773cb2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d8773cb2","dist":{"shasum":"d3b83cd8b3302c53adb87b34f8052f3a7dda574d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d8773cb2.tgz","fileCount":13,"unpackedSize":26576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGpoeCRA9TVsSAnZWagAAW+gP/3XitYCCgBvTuGJMeQhC\nJJ8s0z67S15G5vN5B3Qjv0rmDwjxw61mIqm8173mBI1A04Cz6BW5hnlJqbpi\nKONO1wmikSTVtYDJIu0BdwFBb+5aS1zehEWKu0Ic7y8tCgvKMHzfdAuHRBjl\nFWJWfR8UvRMPipX/aPyKUipIq+Bp2eWdRY9iLToBxfWBLa+wxXSrNWN3XtQx\nAwE1Nz3abGnc3deGJRkHLfMc/a42QP//Ah6xduzatjIgYRmiSnUIgb7bw9+v\n39ta54sDArUJDhimeiJOErmCXODcAKM2aE9++GC1RSKO3/XT6QVRWL5BIb1a\nEU/zLaVmwqqe2xWyPk1YBFrwBsdv0eB73GfTySLI0zG4M/LMdgW82IrUDW7N\nbo7dKRqOtAmhQnwyxdafHetAW/0EePjV59qRjClxQpKmP8eOqv0ASXJM4WYc\nzR9O2fLisqY27P/NMWVz2BAdeST3tEHA3rzk3dIzHbFcowD7pB2gBPo0aduS\naJwgcJ9oqHXs4Wz6D8Dw2O+Xp9/N9u1TgLcurrNMifR+4MDwPjUSJVzpiH2g\nDCggN4PEH+iU74DocoWHk6IKO9SztHudwrleU84D3DbGO7qpkCTy6CDLIolQ\nS2+/ZugVGRPc6rWEEFO28os3KZkIfSkEBVgFOXL5Y9d6PKWK0dIgIqJfrGsf\nWj2D\r\n=ZHw0\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-yrZphGBXyOUUHksG1/0bZ935OOuuKFcOwgVjvBOvTNqf/BSbNTjXlbMrYaaWkOsoS8zUEMun1Y92xXeaDl0czQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD7zWtNQuYF1zLMqsORq/NtNxegnnEUXdnDtvJmkpsOkAIhAJQ6d3//sN2KHA8DL0Dj2UIlzi0mP2Icmk+CfmR8SxWv"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d8773cb2_1528470046183_0.32960518518253346"},"_hasShrinkwrap":false},"1.3.0-alpha.448da3a5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.448da3a5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.448da3a5","@crave/farmblocks-hoc-input":"^3.1.0-alpha.448da3a5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.448da3a5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.448da3a5","dist":{"shasum":"4aad19e522035ac43ee9acca18e8dcfcd4de5fca","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.448da3a5.tgz","fileCount":13,"unpackedSize":26576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbHnC+CRA9TVsSAnZWagAANOQP/35OBajFWaz1vqIpS0na\nZZyKb4Fh/DPsTmLL0T7d/yZyjxv751Dya5E/a0vldWXBYP+Fq7lPpDL0t8+U\nnD+9V9Xvw92JVhUaJpUETxOTfPPHycdnxzIxKuhNqTKEio++Krd0VIQ5fRYE\ng0J1uMFTgOhqkMJk7Gp4Z7sBWGzo8m38xtLF17Cn/NiH+dhnGsVmcGbKbysO\nt+/MlVxeXFfj7dkd5W58smVTssOo0u7jW52vXFNpsY+yU3MIATk73Ho7ZMHr\ncVjE3cISDvMKFj06GbhYwwrcCRPn0g64Zh3QAwaTit+6IJCGXKhMhH7r2Bzd\nZ0MMdAzGa80bLbewVwBOxocixuu19OVGP85d2N5XcKbJlUKb3b4KFslD15kv\nWO1zg6Cp/igBNWtSFqWvR+Zfct6cXRcuJ/DYss7DJ5hUQgyV5b69sDbAYTl4\npipVxrkRvcd/ZHMSw6URnJ/C1iTDIXs1+d/WtIjokZkwQc2VztIIthI2Paq0\n9NN/D1t4nks07tMhEul8pfEdYgZ79P5K+L+1HUIw5IzWPJNZQta8v+ZxpvGU\n6MMWSmoEiycd/+XQJU/Yx+VD/wfBK92eNfA9YxGt7tfJ3Erj9jDnUhpSCmM1\nbkX4u9kUtt7ligpzk3FYYPGBCDQZ5sFSPi45lDjQAZZdJYG39iiBrGi88Nxp\ndHZZ\r\n=PqMh\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-LYvYVPTFGH1AT4PAkK07ELJ+Qz5b002D1zpa58YsbsNeyGFJ384VQnwfPoskWDg+bbaHrOjDad7NLhZwl4U35A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB7FB1GCh+EBLGl6D3lKUkpSVI2lPqM7T0+bZSc4/w/gAiBfWzaXifMk8mw7JQ81sH8ov6N/ZlcMkkL0U1ZemDEyPw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.448da3a5_1528721598509_0.03226440895509497"},"_hasShrinkwrap":false},"1.3.0-alpha.6fef9195":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6fef9195","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6fef9195","@crave/farmblocks-hoc-input":"^3.1.0-alpha.6fef9195","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6fef9195"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6fef9195","dist":{"shasum":"3eacb03e0f443d6788bed2e297d881d683245f4f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6fef9195.tgz","fileCount":13,"unpackedSize":26576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbHqc8CRA9TVsSAnZWagAAS2IP/A6t3Gz1ZctNup+U6+vU\nYd0wNCisd00k2K3dYiysfjdk58pSA008u/fiX2h3VgoGB3DCLN0foSnYVMly\nQvR1/WIK6pQ4EiGusUeaEaXfMo25wls8vKAc4B0kmmQOVWgB8ZKx8kQgTYK6\nyIMVyMPeqRSlJp4QydUXLMzNqXVmZ7fug3acP8RF84ui/E3/wWQlK7zoEapt\nw4F+xGljdlWmkXiMxSIhl+Me41SJgoVMMWH+KJ5huP28Mn6H2pbYzGAI0KLO\ns5erRIHoyLcuG/yeS6zr6RqfBHck7zckrfBrnV9ZSF4DwbCNHM6aF+5KU05w\ny+5qxTJmk0XTZmjNZVDJxnb0tC61Xddpt0fxnf8E6jFNoIXDw+JddPkGnZlV\nSZ1cUS86TOhpTeX2cV+sjkGm6Cm8IfLblYFFZx9dgSYmskZc02H13gjGAOOU\nMaNJiYjVWBsfYytNwROzj3tqLt79XSSCzmEcYAEZMISDtRnBDJTgqetCgPIG\nnk48DKisheHW7CLwnFwlqE06JSyZwHLK/YIMCcqWdPjWRIFC7rNwwYUVBkkF\n+pZ+6/Ci6vNcBF1AaXQQkIJHLOB08o6ajyflEyHLUhd0UJ139fhpxLepaoj6\nHLUjJPPDeesXrxkFRgW13TuXiU3ToPk7a/Fx3aGX6KgNje2AkPdMfPy9+4Hx\ncuWM\r\n=BYPE\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-juReKVSUTE0CpgXjP14uzJr4GW3jvP8iA39tTTaqpU9p4DvA/r5ENPtCjYVfKP2Y5ywD/JUEJO2NL6n3v2WfLw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCGKwaLiHnYvEyLgmuAFEcER2DLLn5t7+uItipxIqE9wIgJf73dbDSUmks69QPcfWstd3fQoErXiPpa7hIXgVqNPA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6fef9195_1528735548646_0.514201982304602"},"_hasShrinkwrap":false},"1.3.0-alpha.3684de82":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.3684de82","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3684de82","@crave/farmblocks-hoc-input":"^3.1.0-alpha.3684de82","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3684de82"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.3684de82","dist":{"shasum":"8207c7fa6a0cd67a108d3785f854058b4fa5d085","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.3684de82.tgz","fileCount":13,"unpackedSize":26576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbHt14CRA9TVsSAnZWagAAUNcP+QBcYBOIYfAPEAzmVki5\nbqyvx6jPg6QX6ZHbpyYHKsnpXcWAbVKsj2tbYxwZQFqpbvgnd+CeFCzgDszd\njTse1D/t6RYYyb5hr8LpYaVd/IwP7Yp7uA3uHxQjNRWCgFMZtS1XJkG9LfaX\nTii9Qd8ZWTD6pacjMQTUhXeCGg3D9e69/VjLEQLwwdW3Up4M5bV7r9w35kxF\nQibqcMdb1u/IssM1y/UHsl6OXYEGFhwxhWnnGlVGDzrXpUyiIVkNl3SMJIdS\n8yOWjBlqBMP4+73DpckCDkmtPcU0QkffeQAT8M5JhMQHpfLnnDO45aIZ4EQ6\nKxDZ+ftXn4xkoUXq9Yj6dIEp+0KfNKvYPztfGIy0OkQ+RbhL9MIViAIX2OJ5\nACUgirL63lnsLAlYJji27kc9PrhwMm0wZbZ3YRtHi26w5bfzIB7PEqXU4WwJ\nHl8K31OK9zWF0vx+fYhXRA28FpiHfqzVMEh8B3+Bf2eJsndOhNUgywk7AKzk\n7aowOtCzY1LcgIE9ZBGC8RzV2QddLTvImGsx+h7tpXLzjm+PhL8OUISemnt+\nCPMyc3tdD0NJtzbk7v/MKeRiR6Evg9fnRlqiei9krQ8/Np+bvqwr/c1aslwo\nOGXFdUypRqaHex5gmYHBEZi4mnLSL4f1z+W190ycC8ColM3ABtbbPCdPKkn4\nZxPp\r\n=nnvU\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-gdUIGLWDgJums9Img86oTqtmV0P7GKNdU+vUUVawqD5ERSqda9saDah00px72FtDxZHWvnB4a4MI3sOYMiaG5Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzLj/tGEebyKEbIeSBjCBF1XZgxcxXU9uE9XeOhbyAyAIgfRdAr6sgNqn5Zv2eHy6Y/j7mjNa1zaC+UTmwY4XEpIU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.3684de82_1528749432428_0.8125812404628394"},"_hasShrinkwrap":false},"1.3.0-alpha.6d5b7b13":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6d5b7b13","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6d5b7b13","@crave/farmblocks-hoc-input":"^3.1.0-alpha.6d5b7b13","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6d5b7b13"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6d5b7b13","dist":{"shasum":"7fd16c0e74ff5a544b26776bf89ec56fd699aac1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6d5b7b13.tgz","fileCount":13,"unpackedSize":26576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbH8D8CRA9TVsSAnZWagAAO2QP/3CjOuiTlA57yQePBQJp\nvn3+kUKR2gvXnv2DSaTdMDYSzOzBv+B6LM/fRUGIaA2khgXCFcJHrnI9u8dB\n4ZRUCFN0nMAvF0QBucsaVuJx4bp49jXIUSwPavbPGqn+fg5ZDZs7pcm0mcfH\nwvnPpJvNVBjsuFHfAF9Sg7LHD1NxpjiZIty6MDfgXqJdC2Okk04hvRD6SJGy\n4KNrzPTpLScBMuxPt43FhMN9V1p32U7gnp5W/SGNng7VG83Ta1xjFdpT8y/r\nfWhiOmcSawsotPDpvccRyFJ1HViK54n7jACiKVwX+qJioQN4FjXoKmarBSrq\ny8zfG/FYsBPXgp/+N2TreVX7wgwnVySLn0Ss0sh1OwMrtDCFwFFdwNMapbmH\na1v8gCvwm9/pxEkMDz9ZdOLz/zvgtOOqCYdlwMlZIfqHEsMXG+8X58oq2nOr\nzCrzfrKb83fO/avCbEgAls9W0ZPPoox1uJCQJJP2SiW7zDZ9+isCnZUmWjGh\nA1X+Mzm7M16hn9NN79kd6OXi3ZOc2PBtvzUZk0T53a8yWYpuQwEHOPC8h5Vw\nnA9vgllst07g5xTFfbrDYgVEy0gycWM+4R9/VdjrukjAf4kBpOKhBA5C/JoU\npD3XZJybahOokBrbkjlM8Cw5JDiiOd14a5EEdbWJOMM8i4WM97XuwR5bBylK\nyUEu\r\n=kqnu\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-zwrELP9jCVnTZmpM68dpenXcHrKcZW5wg75Akx2/gkuLy/UIwTQf7Iyqw4H3Ohq4W6NVV/w/R2bIPoprq+mKCQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAnCJQMAr8awOLCOqNgKzE53RpP5QwkvlAMIUvkJnt2gIgC84+GFHZkLaI9yFWXYCJDpEUtpA6s2Lf9wfjvE52zCA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6d5b7b13_1528807676732_0.9134484535509451"},"_hasShrinkwrap":false},"1.3.0-alpha.ded52547":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ded52547","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ded52547","@crave/farmblocks-hoc-input":"^3.1.0-alpha.ded52547","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ded52547"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ded52547","dist":{"shasum":"7a08e3b90f4acc1a81c03a50fb7ab412707a3b49","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ded52547.tgz","fileCount":13,"unpackedSize":26576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbH9KyCRA9TVsSAnZWagAAAzEQAKRYwTj8WsjNpR5kWvPt\nWroqYZtLOM7rNgYe6CVWovtSr4WTrvaDJ8hb9P3oKfrlA6COrr2A1iqIEcfd\nEPLzIp7F+mweOvMjH+awcTrfMBQoECcihvpNUW1B+GDeCaqucGi20MGOyJ1n\nQoq6X6SUeBcCz8VKcE7gZd8eHaB9it4ITg/tDnwgIqePjeytASMY7ItvWLfW\nzXuX0KlFgcfVP3aPo9uqLrkOQcgbHnCbAgJkAuvintWLOjxWEHV2MBoW8zX2\nqbF2kp6fLHO05fL8tALriZTD5XGmIagTvPfU45lZq+xiDzl1O/h1r7r2UDJG\nE7X7SgnDesPSB/gQTeYN+9+3Q1Y2X+1mOF0an8uJS5cgbENWJa+3dFpcyMLs\nSxPKMkwlQ+L/ij7C165pIgI6+2qLUOvQ7WL64xEHUCt0gbhBOBR/b3sg9/7u\nVukikW64oTgliJUQ574iuWqC0SRPBXPe7jrB3PMG/kVmvP4ksz+ijrCLEw5B\nOvySQ1TinT4q5TpdN8jmnhlpEjjXg7IaTTYAgMtsvyyQIVmieXL0vBUOqiH1\nY7SvjtfkGLOjdMHjw1jdqJJTGNr0RvCZIasq8G8UDii9ZpJx9zrsDcxSOuQm\nNgz8bEkR23CGB5wTFh+zUgMxVz3FmbEhkVpBkSJE7Xts6CRFrBiCkgMYKSGp\njXVI\r\n=0F3B\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-fFz6zTlWoUzG4nghoVd0WvsKkNsiLqzQ0hUzY7Rj62VsPu87d2vKWRXCiprQITDGykoEYFNa40FNulp2W0ga2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID+sOvPj+s++IBTmz3G3UdVrSM2DVaSKtRGEc+3eAX/sAiEAm9Um1sXC6FsFT/d8uP/WUwis7s44kVuJ4kK9EaC9zHI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ded52547_1528812210544_0.5458985562766483"},"_hasShrinkwrap":false},"1.3.0-alpha.af7cb427":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.af7cb427","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.af7cb427","@crave/farmblocks-hoc-input":"^3.1.0-alpha.af7cb427","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.af7cb427"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.af7cb427","dist":{"shasum":"23d09737cb5b8c5078294e9cb9300297dce952b0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.af7cb427.tgz","fileCount":13,"unpackedSize":26576,"integrity":"sha512-G3RLmXD95bvsp4ZGj949kbF02oFo6EC0dqFQrwAeg62xGrxGOreXciLC9ozM/JVEBrBrRdvY26KFafz9594mcQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEyJYB3/Ftfhbm7PYr8IGQPIXA6iKY6jH0FF4ZBHSQ5IAiEAn7SxzZi/VdQWH+NdpuF4DsQbYbAji1OJXOovhXW0qog="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.af7cb427_1528826575305_0.5712824073290681"},"_hasShrinkwrap":false},"1.3.0-alpha.db16d392":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.db16d392","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.db16d392","@crave/farmblocks-hoc-input":"^3.1.0-alpha.db16d392","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.db16d392"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.db16d392","dist":{"shasum":"56d18d7d13830618523a3b437937d47ca50a0d4c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.db16d392.tgz","fileCount":13,"unpackedSize":26576,"integrity":"sha512-yzhFNiXMkeHeyItAB+KthRLs6E+CD3bfvu7qK5qj+jsWdrgoRwdOU00vt30w18M47WiGdQMG6Z7pAZ84/mRyNg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXx4B4WynbWF03r4x5aaDort4g2ygP38WGoOyzEy2kaQIhALSzRefA4qqYoVTN3K0m/lGGaefH2j73Jkrk/OGmTFaf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.db16d392_1528829897379_0.5717997908002495"},"_hasShrinkwrap":false},"1.3.0-alpha.26aa4e30":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.26aa4e30","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.26aa4e30","@crave/farmblocks-hoc-input":"^3.1.0-alpha.26aa4e30","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.26aa4e30"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.26aa4e30","dist":{"shasum":"557ec4e20b76f298a3c5b80b07ca0a706c3039be","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.26aa4e30.tgz","fileCount":13,"unpackedSize":26660,"integrity":"sha512-QV0ewdG/ag0hnym01ZLSAB6jBliAi4aj0WfnJMfkwhm/aXcPKFD+bGuYVPuFOmxzzmknaJ0IfTlAUI/2WLov9A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICKR3LnkHisuJB6OXoz0tnQP9X11w7sdde6hm+E7lpoYAiEA8vhXBsEGETZGalISbnbGrbBC1kjEGxztsATg+X/d+qc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.26aa4e30_1528832146315_0.7950381887758922"},"_hasShrinkwrap":false},"1.2.16":{"name":"@crave/farmblocks-input-text","version":"1.2.16","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.6","@crave/farmblocks-hoc-input":"^3.0.1","@crave/farmblocks-hoc-validation-messages":"^0.2.4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.16","dist":{"shasum":"6268a7de79cec64e006b04fa5092c1ddbf56b53e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.16.tgz","fileCount":13,"unpackedSize":26560,"integrity":"sha512-voFJAodP/svSwyb+4uqh8b6avplmWUF2UmEVt//F4d7VavfwTdTBx1uaTLMzf35B1DZGxJy5vAPTIehT3KwBeQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQ84DWUdk2il/X/0Urxg+Ozcb+GpF8oK3iRnQ2B+bRrwIhAMsjnFkdLg1CaLb89tAA3y4M0+BNpcjQzu/xbtoG1aoP"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.16_1528835066608_0.17640938904837644"},"_hasShrinkwrap":false},"1.3.0-alpha.9ee3ced1":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9ee3ced1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9ee3ced1","@crave/farmblocks-hoc-input":"^3.1.0-alpha.9ee3ced1","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9ee3ced1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9ee3ced1","dist":{"shasum":"3b98ef20cc43f988830a44091fc17dc36157136a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9ee3ced1.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-wCqwhaLhb2d53TjyC/Ph2OoNL4SIoo/xLuhJ+TYjDW8o8Ttv6+zL3qXwZ+rysy32tIRChSctvCM1QQHcrALOVg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrES3YMnc0F4AHJLcMeXvcp+/TCtbI6xO0Py1e0Nz9zwIhAOLaVt6zMtmZy09TkQ8HaZ47mkKnQW3g9t1LGPgNoyM/"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9ee3ced1_1528980957896_0.2709000561640442"},"_hasShrinkwrap":false},"1.3.0-alpha.ad61a982":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ad61a982","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ad61a982","@crave/farmblocks-hoc-input":"^3.1.0-alpha.ad61a982","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ad61a982"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ad61a982","dist":{"shasum":"d922c2f0676ed466fe7e5ca287d14d7c96b920a9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ad61a982.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-eNJQbxpsr4Z4G22O11+P6BwW3OBVZN+UlDm242l/fAz0BZdCMkpsvdisZoFes3caXuam5+YWHSpFxbkWWh/l/g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCL5Rl055e5SpJc8e/wg1HxdsiU9cyksm7mTjafT+3itQIgJ67JQKM04jbvBBfTKf8/aeOrEg/X9p8r1bcRtb21gSM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ad61a982_1528981196897_0.18568849470102533"},"_hasShrinkwrap":false},"1.3.0-alpha.ea5a0d58":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ea5a0d58","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ea5a0d58","@crave/farmblocks-hoc-input":"^3.1.0-alpha.ea5a0d58","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ea5a0d58"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ea5a0d58","dist":{"shasum":"d3803019b3c4b80e8f4f0cc1965f17d4f30463ef","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ea5a0d58.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-0V2AuBUBxo4Wkq10frpztkoylHzfNNXxGkfSPYvdSBA0sMSpwO3g3uQUXIbss/Mmz3DtzFyjsakzuyct5HRA4Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCBS+oYQi9D5ShI18XlOIDzpVNSiLr43bXGyMcvWAAvQIgSvDk9UDpSdD5ujAVbEJLIiP/TXtVHHeFbDwUdCAJD70="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ea5a0d58_1528983761229_0.48166399093928725"},"_hasShrinkwrap":false},"1.3.0-alpha.7d3f778a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.7d3f778a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7d3f778a","@crave/farmblocks-hoc-input":"^3.1.0-alpha.7d3f778a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7d3f778a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.7d3f778a","dist":{"shasum":"ac2dc66af8442e2d109ad395443ce473ad8d844a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.7d3f778a.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-UfW8U0uTBW8CwR0u8T2TgqRCa5EktHFp+J+NLEGeSWsAY5rHX1q4sf3swohSMS2WDbqV6TxMTk8cUOxrIoy4sA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDadfVYQOs9Qw5XaJ8uIgZAvT1hilB+TQH0eSCXEQaU3AiEAzr4fmHVqoEcKNLAMhv3vKvKGDR+61FfYk3x/nmTwBs4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.7d3f778a_1529039849910_0.6204790049991773"},"_hasShrinkwrap":false},"1.3.0-alpha.21f71177":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.21f71177","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.21f71177","@crave/farmblocks-hoc-input":"^3.1.0-alpha.21f71177","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.21f71177"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.21f71177","dist":{"shasum":"0ae40f7f24f3c30d254037cc20148200e6f888af","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.21f71177.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-XUB7TpopWyxa8HRcc+tQjhtZkm3oWlValExdw/ONrPdgAwmDZSapA9KD7LaxStoPjEZ4w4NmLTS+AG2igq/qlg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC4PlbXUKHt4jzJ8sRVwA3k/dzrLr4/dBCUkwBAwP/enAiEAnf+id247DuEx/qEnqR+/Ye3AsOB0ibaxJ9aTyS9Fuu0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.21f71177_1529071654516_0.08110833624016989"},"_hasShrinkwrap":false},"1.3.0-alpha.29be50c6":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.29be50c6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.29be50c6","@crave/farmblocks-hoc-input":"^3.1.0-alpha.29be50c6","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.29be50c6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.29be50c6","dist":{"shasum":"5fd7862524baba10ba8d5bd54020016c1dd4b68b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.29be50c6.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-M9PV/IdcDBfJjgMuA3hUI2oGk5GA6qL86RnhIZfY8MiB8NydhoBbH5iR9RNJLG25ixHRwuKx9I1vPdmLPw1rTQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFeLDus3LQy00nofeyPFN2aRK14j1LsHVUcjNBd9kRdSAiBy62yjSAQXXQQeRLUFIn8rlt4lTAmopVmM5OGi/2UM3A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.29be50c6_1529080256159_0.8285590751782943"},"_hasShrinkwrap":false},"1.3.0-alpha.e0ff2bff":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e0ff2bff","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e0ff2bff","@crave/farmblocks-hoc-input":"^3.1.0-alpha.e0ff2bff","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e0ff2bff"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e0ff2bff","dist":{"shasum":"c22d154a5878b5b0aab98eb4bc4cde577d0aa639","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e0ff2bff.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-4uwocdki63KF5dkCzWkcwjcHsN4sYH1HXtgDp6B9s32BfBYk92kGhnd6STYIWikJGTHbUXAylfbcZOJgYtKoow==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH7uC8TXBgvH7v00Z4+IhaTPZ23NfXYcBo/SpkSst6NcAiAtS+cZVGT2YcSeeBUGlc7PaIz8enG98xcKdVYvPjcvhw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e0ff2bff_1529094194207_0.8168414552445327"},"_hasShrinkwrap":false},"1.3.0-alpha.90dae1af":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.90dae1af","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.90dae1af","@crave/farmblocks-hoc-input":"^3.1.0-alpha.90dae1af","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.90dae1af"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.90dae1af","dist":{"shasum":"3645177e26cae229d459e3edbcb5534faa153a67","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.90dae1af.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-qM6ESA9TeIZaJvOAwvTbyJ+ZiFJxXB8YLZdL6w86gTjZcDghNr3xNPuAqebmzbkBmvATmJgoYinYIvC4vVKwJw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC04okTs3STDe7F/dAkzIA3GE8lgEZ5596N/V/0utD90AiBWNuL2PIPzRjOre1EsfipZb4QGDCN36RqDcx4VatFTdw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.90dae1af_1529094614320_0.7191446436558617"},"_hasShrinkwrap":false},"1.3.0-alpha.9f1e5d50":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9f1e5d50","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9f1e5d50","@crave/farmblocks-hoc-input":"^3.1.0-alpha.9f1e5d50","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9f1e5d50"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9f1e5d50","dist":{"shasum":"0fa5b96599cc8463d938311682c1d606792da5b4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9f1e5d50.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-MmRZ2EkVtkMB0x+N1CApXiCu2TXdWyLFz2Vp2A4o5RwOcFwoNp7yFs0m2YiPaxjKCJ6oT6YrVj0Sb4Gy5a6fvA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH1wl6yYc+9hlGThvf94VMuJWvAaAfu/FgycLLmeb/NyAiAEtdjIGSttCWfBHZK1FoU2xHrBfTQB09aZGL5MbQ/CzA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9f1e5d50_1529096310916_0.743414850734506"},"_hasShrinkwrap":false},"1.3.0-alpha.f9c280fc":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f9c280fc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f9c280fc","@crave/farmblocks-hoc-input":"^3.1.0-alpha.f9c280fc","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f9c280fc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f9c280fc","dist":{"shasum":"44f23207616233a5de1660ab801ee94db3326cef","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f9c280fc.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-qXX8KQdjY+qSzBrFl+QshVa0GkbEXjyLFAUEowDberNvDI+JS4cBoViVwKxPkIIzc81BUSLjAELcO1fb9djI7g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCz47H7dl9RO3PaVXc4Ie1krmUSkl7QshlmWmUFlKAYXwIgcoL6cQw/1ke0FiHspItn/FI6kFyGj0D1LTHqusHEwrg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f9c280fc_1529103029396_0.24667243984489962"},"_hasShrinkwrap":false},"1.3.0-alpha.25243305":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.25243305","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.25243305","@crave/farmblocks-hoc-input":"^3.1.0-alpha.25243305","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.25243305"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.25243305","dist":{"shasum":"71f81133c9e8b1bd359b0683bc9a26a6504d6437","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.25243305.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-ai6r4HmLm19Z6ThyoIYuEFU4z0FHsWhHK2op1N8cMq0YVJXBH1ViKuje204XPj7pDGK1vwhkw/c3gbDsX6kwug==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEevzQgrj9N55PfdnHwIE8DxZ3yPhT5xhuMhv65qoFq8AiANxY6/IXZjPKKGivPvlP5nEliCvDC/HPvaAMYYyWQ9DA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.25243305_1529331079101_0.5805308253369095"},"_hasShrinkwrap":false},"1.3.0-alpha.b69f29ae":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b69f29ae","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b69f29ae","@crave/farmblocks-hoc-input":"^3.1.0-alpha.b69f29ae","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b69f29ae"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b69f29ae","dist":{"shasum":"ce347716fa0d0ac25a4563ba93e8e2756578043e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b69f29ae.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-ygsUP10aOJmZwE7vVgeDFJKfmhoQ2dF2iehqI+kcX+IW64EL94Sb+VnqFmLmeAjTDHkyneG8rRsArElz/uglnw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDX70inOauJSfr4RADpUpfHGYKDG4uvisTLhOzJrauYrAIgN0qW0aBYJ4TGrsUe7bUKTHcPWTHq1FoXBCYzFR+nCBk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b69f29ae_1529332408695_0.06212222942292378"},"_hasShrinkwrap":false},"1.3.0-alpha.ce9d680a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ce9d680a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ce9d680a","@crave/farmblocks-hoc-input":"^3.1.0-alpha.ce9d680a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ce9d680a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ce9d680a","dist":{"shasum":"d4da9e2831cf7d1cd26d0d159eab0a88d93cdd98","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ce9d680a.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-TVQ6oY9pQy8XJLYar0RTqB07A6cA01OToL8wipFExWmFQhxH60cn7LXq2VdnjjG+vJIkgGVQIpf4Cm39xHGGLQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFr4NlkU0nT2auvpwILu6sevaCq0+YlzcSSaxl1mrzxKAiEAqSNEo/b1xS/ofXO9QcAzVBTNmVQQQoiN/dcnQMgdC1s="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ce9d680a_1529333409165_0.7872065025595123"},"_hasShrinkwrap":false},"1.3.0-alpha.8d708914":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8d708914","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8d708914","@crave/farmblocks-hoc-input":"^3.1.0-alpha.8d708914","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8d708914"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8d708914","dist":{"shasum":"a24bd7d463872d247eb9236f6ff834b8367f8ccc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8d708914.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-XFckvk6LEAdwbubJZ6gWMzNeCdgzwZrefHuvp4tfDrswHNPatPrJml0IPNAACkOIOp5kkpw3EL91nu/sZ+0vww==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDao/TIwVTvC6V1RUL4eozel4CWhw6QPbwgM0ggMCKOQIhAN0q5X2MslOmeJ752er1UYQX2d+Bn6N4iWeMnfYJY73p"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8d708914_1529333516780_0.9700654149059664"},"_hasShrinkwrap":false},"1.3.0-alpha.d9684102":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d9684102","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d9684102","@crave/farmblocks-hoc-input":"^3.1.0-alpha.d9684102","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d9684102"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d9684102","dist":{"shasum":"90b45fb2cdc57b5697a6cecc0019dd1db79985ba","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d9684102.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-RJ+8GrY0tknWrfXBX+mpanrgD3GLuyuB830irOHA4HKBvW0FBF3MyZmmYXkl/GjOmOEt84wsbX1hLuvTtFhTew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcjXQ2P31gLO1qK7/0oEbetAoGSfC86Nz5wKONVkq3XgIgfKCwoiL02a2fujasoRgPlSfK7RIwM6yIdd/t5uc7zf0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d9684102_1529333765129_0.711929427209544"},"_hasShrinkwrap":false},"1.3.0-alpha.b60cce82":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b60cce82","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b60cce82","@crave/farmblocks-hoc-input":"^3.1.0-alpha.b60cce82","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b60cce82"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b60cce82","dist":{"shasum":"5a95ba5c9f4a1ef6151873e1a67767bf3ea7d46b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b60cce82.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-rMMiQP57LDoKpFqakTzD7/QTYftEK/u2CICoGLTHZsgYLxW6Aj4eDEciUJsc1drhCV4ddLZDF21q9Zl8otM3CQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnJHHpekD0G78q5D2KhBYMdT9Y50YGmoeTY5J4qCiZRgIgG2iJVzJsj7WpSkP1bPcsONC+n1WLpoB3lr2JxKA15fM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b60cce82_1529334203333_0.27496390466813847"},"_hasShrinkwrap":false},"1.3.0-alpha.482ea003":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.482ea003","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.482ea003","@crave/farmblocks-hoc-input":"^3.1.0-alpha.482ea003","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.482ea003"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.482ea003","dist":{"shasum":"5938b44b782ece3da62eac0b87bc9a13d2f088e9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.482ea003.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-QPCtlLBgiC0OzMtPnQSxFlU07Qlee2boN2yqe1J/V+R0AgeQFYEjG6ECH1B3auljsYJgT+SiQ5hIFpYXpeFWfA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCn4XqjEfaLcXYiddPAzLgFv17VmzWg3s9taYSfktGy3wIgVsM8rz9WCYKpnw70EcTseYxucingQtRp4ht4GZ/0gY8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.482ea003_1529340835353_0.676318521236472"},"_hasShrinkwrap":false},"1.3.0-alpha.e490da08":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e490da08","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e490da08","@crave/farmblocks-hoc-input":"^3.1.0-alpha.e490da08","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e490da08"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e490da08","dist":{"shasum":"0428ee54c25a13c7ac4583dd57d5eb54b270b051","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e490da08.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-AylqjsDkc7irGxTjfEZdp7pQuYn0F5vJiHUi/pZHmWplkEQUwuyvuw+L0fq3/W5JH38HvlQEWqdsqaxMtkvHjQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG/Q4e1UGtnS/HqgDO1dHOVqKYJhiXZZEOs5Cu2gv2sNAiBfqGHhYRAtoI3+PgZI5FVEl+cRv/Suh5XTx5W4xgYyoQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e490da08_1529352056617_0.8662190037988233"},"_hasShrinkwrap":false},"1.2.17":{"name":"@crave/farmblocks-input-text","version":"1.2.17","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.7","@crave/farmblocks-hoc-input":"^3.0.2","@crave/farmblocks-hoc-validation-messages":"^0.2.5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.17","dist":{"shasum":"0b0dda4c231867168604a8fe4772ec76010084d6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.17.tgz","fileCount":13,"unpackedSize":26804,"integrity":"sha512-ZKNOTg0y4Cl9M6IMinpVILfF+fZ50vlrbsgDmsK5cWP288975M1Lvp1MG0pMyGWGGhUmeRAvOmfSKseJVf/v9w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbMq/r6svlVUDMyc09auyu3YkObdEBfEHl1rOwZjMq5wIgJYADv8DWzOLqV0YMt5Y6Xf6cSw0caOzKf+NIud6mPBQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.17_1529353829267_0.012729886384948763"},"_hasShrinkwrap":false},"1.3.0-alpha.012bbd65":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.012bbd65","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.012bbd65","@crave/farmblocks-hoc-input":"^3.1.0-alpha.012bbd65","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.012bbd65"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.012bbd65","dist":{"shasum":"6b866d08fb818fce26879cf2df775282d382a004","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.012bbd65.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-UJHiXr1ygpYAckG05NPojAKV3hCvzS5ayDiPr/7xfErEyn9J1y194MvWd4af2/i19u3pxfunuqvQ6uyUhFM1+A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCVSpHzW68OHY91twXEuH8/81cPkBbjxXiu1Spbh11GJQIgX5JE1oUYn3VfZ7A4qO5PckRGKabvsD04apQTSbzlGUI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.012bbd65_1529354922112_0.02942498363071877"},"_hasShrinkwrap":false},"1.3.0-alpha.d196f55d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d196f55d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d196f55d","@crave/farmblocks-hoc-input":"^3.1.0-alpha.d196f55d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d196f55d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d196f55d","dist":{"shasum":"5ccd267d8687fb0d3428bced105f01da5b9e7204","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d196f55d.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-KnVwXESKXgXurS9Iof2tbYepddWJMNeAkK5e+sHmtit3Qo1cDtlLcdzU4SvGHet/vuANWl0WZWdrlJOmKWjgVA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQChOAfkPFoBxGrWNu65XibOp12FyaI6Es2iIyQaG2kItQIgE9bwzf2w4Fe0jw969PJoiD7DioJJcxtkhiLSGVNYzlg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d196f55d_1529356062440_0.3131102176780818"},"_hasShrinkwrap":false},"1.3.0-alpha.4dceb2e5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.4dceb2e5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4dceb2e5","@crave/farmblocks-hoc-input":"^3.1.0-alpha.4dceb2e5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4dceb2e5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.4dceb2e5","dist":{"shasum":"ce685306e9bf3ea132ad91b2e6fc9d6c5384bf0c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.4dceb2e5.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-qo0f94UTBZ+PH4mir2rP4Zw8VDAlQ/azoWjmhfUn3k6rezP52ByDm66690mTZEDWaoFUaB8IkFSMGREPYFjuJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaJcnnw3R/onz44pPU62v+U4eJFmQ0KglKs8QFl/AwNAIhAIUCb4/QmEq6VcDlXE8NtGPPPAU5bpO3w3TpBxo1oPck"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.4dceb2e5_1529356078435_0.9557818555671014"},"_hasShrinkwrap":false},"1.3.0-alpha.df743bb5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.df743bb5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.df743bb5","@crave/farmblocks-hoc-input":"^3.1.0-alpha.df743bb5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.df743bb5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.df743bb5","dist":{"shasum":"2f4ccd4a0e4bf4528bca1815314667e19b7c2e18","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.df743bb5.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-whUP9mxuSsmbqms41L1xTOVP2auL7eJUyKH28MwAG3DeztAzxRXrX6PYf4HrNBMQEp9cT55ISsvKXkAhyp/x/g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICCZOrt6VDtFEhJPaLhPUa2+WlE4Wc+6kWxSJAqu/5LQAiBvZ9ulYiIndoAKhbgn3xPwGzFjCCSbVzVa/iEh+BB8Tg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.df743bb5_1529425659235_0.8357327580049263"},"_hasShrinkwrap":false},"1.3.0-alpha.0f95a3f8":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0f95a3f8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0f95a3f8","@crave/farmblocks-hoc-input":"^3.1.0-alpha.0f95a3f8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0f95a3f8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0f95a3f8","dist":{"shasum":"316b0fd6c9a0933e16f027ad7e5d1fd323282272","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0f95a3f8.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-IsZV/HjZLGGWnN+7YRf2Pl4d7CSUGIVGuVYev3ARrs+xCebz4Q5fihOy2nj9xR2FaAERU2KRjZhU2dsj3Q2MeQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC3JP3IJHX1WRopKJlA9JdyZ4Fww+yhVmAdBmWBXauoMAiEAvtN9ONRu/iqhNoSLRf0OlMpkZLOAmXlu5GA4J7CV8yE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0f95a3f8_1529426355452_0.6103528546249535"},"_hasShrinkwrap":false},"1.3.0-alpha.093723bd":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.093723bd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.093723bd","@crave/farmblocks-hoc-input":"^3.1.0-alpha.093723bd","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.093723bd"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.093723bd","dist":{"shasum":"23e04881997971471a253ec283c4fd4fa38db4ac","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.093723bd.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-wkTD+qv8rhYsPL1mAVBBJb/Bq0LJfLpZEPxsOKeAIJGcCrXk2feO59TNQbGJyEwQQzp3KMgMIscL6cwgozXnCw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFaivwic9hPDdpNHWZ+RZqtKDdci0QiBSEUa+/0SO87kAiEA27Qn+F+orCIAlqXn3V4Du++M8yJiye5u2KByWclP2io="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.093723bd_1529427786916_0.3975622280313995"},"_hasShrinkwrap":false},"1.3.0-alpha.029d6be5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.029d6be5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.029d6be5","@crave/farmblocks-hoc-input":"^3.1.0-alpha.029d6be5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.029d6be5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.029d6be5","dist":{"shasum":"3818db490e33b13cd5758a0693a1b9477c5d7dd9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.029d6be5.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-JRvnExenDt/jP/JLk5QMhkv7wiEI5/DNy+XR1t5rsm4xzvXGdZMqiLT3xcxk7vYJhY3qO51eLEtOYUpoitzdRw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDrhGTxsdBfQuJvbJKCCp/ctfsx8gURIiHlaXe1CBxalAIgJNw/c9SJ0ts0blWkiYERoDeJiEteMeb/4d4H5fYhr4M="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.029d6be5_1529428515983_0.47914445159338315"},"_hasShrinkwrap":false},"1.3.0-alpha.d5b210b1":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d5b210b1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d5b210b1","@crave/farmblocks-hoc-input":"^3.1.0-alpha.d5b210b1","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d5b210b1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d5b210b1","dist":{"shasum":"137830dc4263dda8fa7c6c784d1459f19a7dac80","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d5b210b1.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-IluVRt9u1kYk/hPtmRODTCySckhed/aGySGtMbr/ApGBb+H14egLDw/H2Oeu4m2XB7Dh/nBYVs3IPYVYURDynA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID3khpRi0qqzkonrOuBqRkNh6pigbRvkOe9Lu/l7bt3wAiAFVeDL8m2TQFbmpJIhfl3pJ9mXMvEiNaJFnKLcKQpH9w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d5b210b1_1529428592413_0.5948825078001603"},"_hasShrinkwrap":false},"1.3.0-alpha.d601a802":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d601a802","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d601a802","@crave/farmblocks-hoc-input":"^3.1.0-alpha.d601a802","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d601a802"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d601a802","dist":{"shasum":"a94e18973d22fcee611cac23360891bfea79b289","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d601a802.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-gq+W+mdofkXrZzT9nsBN4jwbyVSzSGsoHqpBrFqihkmBCwk2LJ1vtPgI2vMpvEiREOnVn6MRdF9FiyxYxNR8Lg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPVbJQsrGFdofFTX/sYXTOvEJjJJlnFzKARqy43LozBAIhANPJhXeLWPuBFBI7TRqVsHa3dDL8edkRD4QnSz5svka6"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d601a802_1529429140505_0.32483579509651284"},"_hasShrinkwrap":false},"1.3.0-alpha.87d58a89":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.87d58a89","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.87d58a89","@crave/farmblocks-hoc-input":"^3.1.0-alpha.87d58a89","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.87d58a89"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.87d58a89","dist":{"shasum":"24b9b3d549aabca1c4fdb5c0a6573b743f4dfea1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.87d58a89.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-9nEbXTZg3HQXvHRgjKlcKrrFnekdIhUMUqJ8O5pT63dFuC0zHZ8B/tF8+0d/K2u6zq7gvtMcMr6ImhiGho5Fqg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTw8IHS3+lN+zCRpXXBeQKUUbnhM3JllKywAru+jBswAIhAJDaiOGbHI04W/cUlvJi6P25CFOJvjhA47fusqmDYFO5"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.87d58a89_1529429159309_0.539442565713067"},"_hasShrinkwrap":false},"1.3.0-alpha.1347baf4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1347baf4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1347baf4","@crave/farmblocks-hoc-input":"^3.1.0-alpha.1347baf4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1347baf4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1347baf4","dist":{"shasum":"d4ef57db9be178bc24f8c8ed4a08d014f8dd250a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1347baf4.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-td5OAU1ft4G3LvwcOEYOaUMCdJEN3BZ6mICfmcxM9rvhDq/n2oahbDV9pElrWK+tifrPSAqnnHoHW8qoCAVgqQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBhXaZRYd/LX834kqimlaFLDpJCcVFxL2T/o5yFiFIBuAiEAhizgOl9nxtiFsZJDhMsnBbADxud+VG+oTNdh4edDrRo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1347baf4_1529429329057_0.918088383143358"},"_hasShrinkwrap":false},"1.3.0-alpha.7833baa8":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.7833baa8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7833baa8","@crave/farmblocks-hoc-input":"^3.1.0-alpha.7833baa8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7833baa8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.7833baa8","dist":{"shasum":"28e7bc8952f95992b58600579ff6da3d59b2bcb6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.7833baa8.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-HeaWGkAsuFjY4Y0GuGI6aC2zhYolCPjgUOiQS08qxyvlhXQq5ys6U9EE/hVduxdsFiaY+3/WtWiYfMB3V3JogQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQ6e8rg3r/xBmgBKSaFe/CEbLl+NzWqayP6nTcKccpAQIhAKoE3KlV1EUVtjyMh0MzYpBmFD5Ip6VKPBu4Emqne5cx"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.7833baa8_1529429680661_0.19086329300720606"},"_hasShrinkwrap":false},"1.3.0-alpha.c05cea18":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c05cea18","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c05cea18","@crave/farmblocks-hoc-input":"^3.1.0-alpha.c05cea18","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c05cea18"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c05cea18","dist":{"shasum":"da155562f265100a22a568c7ed953583b72a1e3f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c05cea18.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-u8qUxklRZOcaeuGww82X8sYhKInEE4+Xwz7TTO9xojJ32JB9P31EEi85Y2H9rkeedIouwfO4yxF0/Sc4wmzX1w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCK+LLkZBqWs8rVSm5yFiDJ4RBEg47IXaIaCEfk+rLN6AIgDRYpQpebC8I/o9esfa/nhS1pBDUo1o7EXFJ3vLHimxY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c05cea18_1529430162853_0.619020999872099"},"_hasShrinkwrap":false},"1.3.0-alpha.854b6ab4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.854b6ab4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.854b6ab4","@crave/farmblocks-hoc-input":"^3.1.0-alpha.854b6ab4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.854b6ab4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.854b6ab4","dist":{"shasum":"062d9b05ac7ba06ef184b1d3de3eb2e3ef6c1586","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.854b6ab4.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-C8YWKQ23dTEMZcSBfzNDxuh32eCm20DG/R+V6q9e4sBmgQhS3SPI7LdP77vWYBeU2SyLwHK8JHTaG9TQN6xAzw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuGUKWzBi5KdRX4x/16WWJieqwAgC4tlOBbUCaM5op+QIhAN/k5uCxkAwvulsqBHnIq/V0VGeEgJ/SwJa24GoS+eJQ"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.854b6ab4_1529433504975_0.20491765526131434"},"_hasShrinkwrap":false},"1.3.0-alpha.b050c5d5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b050c5d5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b050c5d5","@crave/farmblocks-hoc-input":"^3.1.0-alpha.b050c5d5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b050c5d5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b050c5d5","dist":{"shasum":"dae0ff63b42f04dce1f94e2b3ba1032cc7d791f0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b050c5d5.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-W/Rc+qqRqiTvPZPB1ALk6rl02lFP/qrwHK1OSyI/RFDxb3tPNrBmNyZMD9bl722gRfyNTN0M7vs51FaKLFeIcA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFvpsM/djfJRHWvC8FWxrCrFUduqO5LjL2ZuNCInq+lQAiBfIyDnLAexMGZSfFvyzy5eDqhBvQMHiYqYKi7ghC1SGg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b050c5d5_1529443028142_0.24103198762543654"},"_hasShrinkwrap":false},"1.3.0-alpha.718793ee":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.718793ee","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.718793ee","@crave/farmblocks-hoc-input":"^3.1.0-alpha.718793ee","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.718793ee"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.718793ee","dist":{"shasum":"c1cb396de618412967fcbeb91224dac5ab56afc5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.718793ee.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-O4EImdjExx9E/i34vuZV4++oz/1bkq9vuRsKyTCQkUBOxK6V50l6S5iWTT7DeKTtvg+KMZj9OyY9ENTVQrW9yg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICMyFzkMt+lbdlk4OjhGydPo5BiRK1/jOeMPT6ColF3HAiEAzpzkhDgwHE209BeW6Fp9oZN3Oh4FlopnESYYF0Wwk5k="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.718793ee_1529498738086_0.3141790314576125"},"_hasShrinkwrap":false},"1.3.0-alpha.5d1d8c42":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.5d1d8c42","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5d1d8c42","@crave/farmblocks-hoc-input":"^3.1.0-alpha.5d1d8c42","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5d1d8c42"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.5d1d8c42","dist":{"shasum":"d069b8fe1960337745dfce25481ce7d2afcc96a2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.5d1d8c42.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-Ug9K5mLJfh8mXQOLM73c+93jkgv+sCCkWUxyPKyZmms+ekA5tHUn0mvEScwr7UtySIm12P1RhMPLvah+WgEiEw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFEHGBASkVW885+0Z0HKdev/dadIqnvNjws7OoRoM2+hAiEAizhPQAhnIMPuBm6gHQi7z/i3+m4K+qitJsubdHbvmmg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.5d1d8c42_1529499327587_0.350201544607029"},"_hasShrinkwrap":false},"1.3.0-alpha.d943481c":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.d943481c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d943481c","@crave/farmblocks-hoc-input":"^3.1.0-alpha.d943481c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d943481c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.d943481c","dist":{"shasum":"4d483c87d1ac3d9f5ebe2d2ccb7f67830d107e51","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.d943481c.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-6M2xPn0SqKosQGOIUTkDXVg+CuSd6T/wmb5vKAc1YqgOdO1KAG+7BEql3XNFh3rKjxo7Gsp1fz2bP4rzuOCLwg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBrfVr0/BEBJqYKbkPJqgdgeB9dzwB4q+0U7Z2F+CS9cAiAQjJpjkza8p7PR6sXBTJdlj0c6D09ibY5aO4D3MogE/w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.d943481c_1529508164261_0.899295169657321"},"_hasShrinkwrap":false},"1.3.0-alpha.f2eecb53":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f2eecb53","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f2eecb53","@crave/farmblocks-hoc-input":"^3.1.0-alpha.f2eecb53","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f2eecb53"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f2eecb53","dist":{"shasum":"4f8b57d2167b23e3d4f97b4ef7f9f7d01b60a59e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f2eecb53.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-dUTITiZQtwXz3zje/vmB/+QtJR9gp/vAuMG0PlQ7CWaLiYFCvEnGLeJholmEjBFWQk63Kr/M5CadGL/TQ/ppZQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDXEp5SVsyvk0eCnRTOebiANKB3G5LTcBH5ep46SzmMpAiBKqM5/7/ok9EQY51ubcNTtwEjEaHew5NvjDaZ0CCzBQg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f2eecb53_1529510066988_0.2317665978637944"},"_hasShrinkwrap":false},"1.3.0-alpha.7ef110eb":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.7ef110eb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7ef110eb","@crave/farmblocks-hoc-input":"^3.1.0-alpha.7ef110eb","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7ef110eb"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.7ef110eb","dist":{"shasum":"8762a8fc126bd6742e322580a182b8fdbbfd9d3b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.7ef110eb.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-vdI/aJzKeutGZzOD4e/9HG3U3uSg5EJYzzm8DjJULIqjHYyApzKiI/ZmT/LeRC2PSDUzb/cc++lmKjq12jfIdQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQrfKeg61IY/8j1ahhX2KUtC1zwmClLNG538hPN/maogIhAO/m63CLHk/59VHbdOydjXEaQYKQ4pNfJt6EV3A1qg/j"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.7ef110eb_1529517865802_0.28250571357018317"},"_hasShrinkwrap":false},"1.3.0-alpha.ca4facf5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.ca4facf5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ca4facf5","@crave/farmblocks-hoc-input":"^3.1.0-alpha.ca4facf5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ca4facf5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.ca4facf5","dist":{"shasum":"759cbf3b0dd2307bea6d40c829c487431109c581","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.ca4facf5.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-FrhuYlOadvWBBEybzeFpzu2iuPELuolBfqcFtlaumCa+ZHUwv9ADXEumzkoVzoYcDNT28nHeujWIH/AJjA9UqQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB2bjzs/G2bLsunBWo1IYWemjCOJZnDyjVPMSX3pgr8FAiEA22FQy8gngh7t39ka3rDwS2JhdjatV9njkycV/prTqBg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.ca4facf5_1529519571426_0.27875381126432974"},"_hasShrinkwrap":false},"1.3.0-alpha.b04e33fa":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b04e33fa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b04e33fa","@crave/farmblocks-hoc-input":"^3.1.0-alpha.b04e33fa","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b04e33fa"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b04e33fa","dist":{"shasum":"baeb3b93aa944e374ad380d8f669b78680884be3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b04e33fa.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-6oEEItU6hw1Io29fYjFvXLaj8suA806FYxQwBDWa0GPb2YQCspnXMzCmlHFoPpfc1CSR8NxRghZCv1F45FJoqA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVY2WVjqUd5tLg7pDA080KzzPpmY2WyS4IG4/u/m0Z7gIgTKHbXXOmlVE1xSiCbP+kWPJ3xqkj+hRLm94yXxQ0PH4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b04e33fa_1529522237074_0.8763312066853355"},"_hasShrinkwrap":false},"1.3.0-alpha.0eb796b2":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0eb796b2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0eb796b2","@crave/farmblocks-hoc-input":"^3.1.0-alpha.0eb796b2","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0eb796b2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0eb796b2","dist":{"shasum":"318f4eb7fbd621f11a2a7ca17257b5759621cd69","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0eb796b2.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-2sOLq9CoBSyHxlZAbAkiekGPeMJP587KEjHCGrMdVjp/KDHlR5CEc0kDwv6+/Sg4dixCe6nnyohimKrFj7zgtg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGqusy94N0Qu/j0SFZLJOxxGjbuEFLUp4QbiUNzvwbGJAiA3ouptFL7eUUinSasYPs4+IWNNPNvd45g22OD/Wu29Sg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0eb796b2_1529522461408_0.8097618568555456"},"_hasShrinkwrap":false},"1.3.0-alpha.c04ef9f7":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.c04ef9f7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c04ef9f7","@crave/farmblocks-hoc-input":"^3.1.0-alpha.c04ef9f7","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c04ef9f7"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.c04ef9f7","dist":{"shasum":"50007894786f1c42b3e155c1b2419fd41c3341de","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.c04ef9f7.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-IBYk7DyXPCzQJkTzBwKktet1yiHj1HXUeBz5YllZzcusdS6y4Me1tfpJ15Vbrx2tksuNuoACecj4yfgi76/Qjw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAKxwfZLQj0bbGyFGj2ujRiX87Gi2PJszaCgZDMIJr5HAiAVuftmkCgJP7Od8KD/+W8g2jOiH5qmDWaBEm1JlQgXIw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.c04ef9f7_1529522674540_0.29529745913171057"},"_hasShrinkwrap":false},"1.3.0-alpha.0058fd7f":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0058fd7f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0058fd7f","@crave/farmblocks-hoc-input":"^3.1.0-alpha.0058fd7f","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0058fd7f"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0058fd7f","dist":{"shasum":"ae93a1a2ed99ec9f41f01a5e72d2c1cf425df9ea","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0058fd7f.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-0ISEOiScZHRh4+mszNF3aX2gXzK+2vh3wMpbcHi0rjxIRw3cNG1kBTxVXjqNb+xh9rFBKqE/xSiG15dnN1AUCw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICGoNALAryi/NiIHH8WM0pQzDHFUqeyyK+R6ff+r/OmeAiEAzFmwG1nyYK9i6NpJ7Nsn2up2Coe35pkeGFovdKc9+ss="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0058fd7f_1529607080016_0.018984923005535004"},"_hasShrinkwrap":false},"1.3.0-alpha.613ea2eb":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.613ea2eb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.613ea2eb","@crave/farmblocks-hoc-input":"^3.1.0-alpha.613ea2eb","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.613ea2eb"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.613ea2eb","dist":{"shasum":"4d84d6c22813fbe0a5395b354b14013fa7391c3e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.613ea2eb.tgz","fileCount":13,"unpackedSize":26904,"integrity":"sha512-VBoyLaWEnlqjfqESfmaewNtkZjZKHkDPgG3PY0gsdbIrCQsck5ONay7P+V5HnmfFKqzdtwfesem7LIEb8pwu8A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCiJXUXCzXfpgYGbPJOgZxXWqTCR5v11p5TXMZvngewqQIgdr1owVdgWVvCcwTIjxVvc1A341QDlB+f3d5RMbx702Y="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.613ea2eb_1529613652483_0.5248637939371352"},"_hasShrinkwrap":false},"1.3.0-alpha.bb7177a5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.bb7177a5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bb7177a5","@crave/farmblocks-hoc-input":"^3.1.0-alpha.bb7177a5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.bb7177a5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.bb7177a5","dist":{"shasum":"b55b8cf90c7bdae9a6aecc5058c390afb76599f6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.bb7177a5.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-7HJF2QPKroBUPJZNelgS1418E17JZPbxxiCU2nRuADLsBLy0M0qkLKFLC+wn7CxpXSo+d1GZV83NaBvyMgdiAw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDedU9rViC8zV9CnyXXe/B7328LR9qsANXqmdlzgR6DtgIhAKxWiXsHbf3n3mxRRJk+p2DIOyRhq9jhAYCS4Q2TJUPx"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.bb7177a5_1529614565545_0.022236283550862268"},"_hasShrinkwrap":false},"1.3.0-alpha.8d320877":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.8d320877","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8d320877","@crave/farmblocks-hoc-input":"^3.1.0-alpha.8d320877","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.8d320877"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.8d320877","dist":{"shasum":"b3c9fb1cb704abbf43d76e6076f90190e0144c12","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.8d320877.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-s6QQ4oZFwmjFXw/uQwSrg5dRHMlo8hQMeK6WGCbB5k9LXMZIMJi04MAstXcLF27V3D0aJn50sBOvWJWQMWSovA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdkAdftLiU7vPSndhtur2x3g4Hz9iZKhfwjnIuxiykZgIgBqaN4609cyi+FhayN5V3IgqRBiLNRtFsCQ9T3FzuFis="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.8d320877_1529615656722_0.5078261713597112"},"_hasShrinkwrap":false},"1.3.0-alpha.02d0d009":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.02d0d009","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.02d0d009","@crave/farmblocks-hoc-input":"^3.1.0-alpha.02d0d009","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.02d0d009"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.02d0d009","dist":{"shasum":"444e177bd3324f363aad723fff83c2664788b15c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.02d0d009.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-L2bQyUqjMCEA0rdjo5KIqjIF7ESbfFYmCU6OgoZzcTNQjJ6S36xbxg0ngISzDil5Zs3OyIaM3fq+HmGwDsPXug==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFl+nzKFPBdCmkLguqMsp0Egs1jPnZgIlkyzwBlbTY5nAiAys6CJeTdvOmyGSt9YU6RhK8glETj/H7Y+RFzD1CIsIQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.02d0d009_1529676781737_0.8630866342139545"},"_hasShrinkwrap":false},"1.3.0-alpha.dff13e4b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.dff13e4b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dff13e4b","@crave/farmblocks-hoc-input":"^3.1.0-alpha.dff13e4b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.dff13e4b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.dff13e4b","dist":{"shasum":"0209a060c04a3c42ee463a0ff464f5cba89d5c5d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.dff13e4b.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-AXFFIp7VC3mcgKxGR0UfZx7koQX/E47S7p9RjALttXgbSsZprh3h62fKcz9lk4odbq9mpFvk2pAXf5e8cO80YA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF0B9pgaH+8qF8kdolbC4sTLTCnlC8jv8KOi0cs9Apw4AiEA1QghZ4MfSP5qr9HwnvISrlI390t+jWeOFre2IB0mMvY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.dff13e4b_1529676918733_0.7909759597622197"},"_hasShrinkwrap":false},"1.3.0-alpha.7a7e55de":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.7a7e55de","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7a7e55de","@crave/farmblocks-hoc-input":"^3.1.0-alpha.7a7e55de","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7a7e55de"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.7a7e55de","dist":{"shasum":"2b63493ad127a1a7507ae8c4ef487755072f66b1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.7a7e55de.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-Ge3BpzcuucQX62t6BdusiwabHpwv4kHtULdwqQlCbAegCwhUx5TtbJnv51XW6zY6sG12GgfI6Gu9MP6yqKG1tg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtpXE7q0GiuAKisnq46T/L0XdXGIZvPMIn9RlQ/rb0uAIgQ/sAR/+Lj64BxqF/Jej9JFMWI2AZSJIBDHIb6FGJaI8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.7a7e55de_1529678922067_0.18269927529335073"},"_hasShrinkwrap":false},"1.3.0-alpha.21d19d43":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.21d19d43","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.21d19d43","@crave/farmblocks-hoc-input":"^3.1.0-alpha.21d19d43","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.21d19d43"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.21d19d43","dist":{"shasum":"7ceda7c4849c07eac40cda7f9dd4384425f042b2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.21d19d43.tgz","fileCount":13,"unpackedSize":27148,"integrity":"sha512-a30tmAKOlSMklaV+lcL4C4FQiam+mcvvOLXeHzEEEb3nZ32zNs3fpcaf1dkaPY7qMwy5NNgv83hEiHhpNbQYXQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMZ6dzEPihN2mmID65WDUzaEm8aTcYbeTQwA2mgcdIrAIgZx8Id02yjGQgaarHE9Zeoo4jTe4vBLhMLr4Dcio9sCI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.21d19d43_1529679163502_0.6222025096147492"},"_hasShrinkwrap":false},"1.2.18":{"name":"@crave/farmblocks-input-text","version":"1.2.18","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.0.3","@crave/farmblocks-hoc-validation-messages":"^0.2.5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.18","dist":{"shasum":"899164517bc94d90878f24626b171785a6ff1a2f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.18.tgz","fileCount":13,"unpackedSize":27048,"integrity":"sha512-hZMIm84Tsi8swytJHpd+fyoMlRbWDzH0DGbtOSQ/tRl4Z031q7TTuC9EiAUAhDZhOVYAanXMZPDqmif3enkalw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBBO0o6M0bm2qTO8qP1jh2hkUKkKJZAWdTxw5ITolljxAiEAumXc/YZF2hSSqpzHjHVGKitv3Pj/rMmL0s//dtH1pGQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.18_1529679854828_0.05612815673311"},"_hasShrinkwrap":false},"1.3.0-alpha.9b3b0b90":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9b3b0b90","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9b3b0b90","@crave/farmblocks-hoc-input":"^3.1.0-alpha.9b3b0b90","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9b3b0b90"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9b3b0b90","dist":{"shasum":"f7d60caa9cb321919064e2c5584660a92b2da1cc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9b3b0b90.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-eyTTG0Y38+xiMlE/rNB0zDQmA4RcO20+a4Athonx7/T9d3OFxyiZRBtKQjPj/seKtUrj3x1bX7gdSYXfNYtU9w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCxBCK1XSjoTiaavI/sX1A3pDtOVQ0SIDHhI4SveCJxwIgbemwCraLBmyqhzKhQkwmcPmmlNYrw3AEBltyh+PKtf8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9b3b0b90_1529688837808_0.08146341400459978"},"_hasShrinkwrap":false},"1.3.0-alpha.2b5ec8e7":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.2b5ec8e7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2b5ec8e7","@crave/farmblocks-hoc-input":"^3.1.0-alpha.2b5ec8e7","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.2b5ec8e7"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.2b5ec8e7","dist":{"shasum":"5734fa877f64c7470b77611ec3b0c5a67001f8f4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.2b5ec8e7.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-BV875hlrkmGvm+tTb7RdK8vjnFQy9mMh+aJbWkK10/4CK/1VPCM3Kv2UjGyzFyOcil6p7wyS5bSK/HtbOo3zaA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQTeVYuMvQz7EFwh8GosgfGe38Yd0wOlVvDFAmBcmulgIhAMwb8Udc6yCEOV5KQCRVju6N6UDjorRiLFgCOTrLQ09c"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.2b5ec8e7_1529731227915_0.8349788627478236"},"_hasShrinkwrap":false},"1.3.0-alpha.e8e2fb99":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e8e2fb99","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e8e2fb99","@crave/farmblocks-hoc-input":"^3.1.0-alpha.e8e2fb99","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e8e2fb99"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e8e2fb99","dist":{"shasum":"9e87a4e5bafcb1fe02795aae35384fc436ba5378","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e8e2fb99.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-ntRaRIKoBkRJ+gt2A01ggdmEkIkvIId5i4v+hodJtByqjJloNKxd0OnBbmnSWH6+82hp0GthCZo3jmTwPzmHzg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICf8p0xHm6UT5r3c3jlGkSeOiuyzLr/jXJg0uqDgfcbUAiBymSRrKR0rslIGrzYssiarbqcoPKZVf+dBzB28ibwvug=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e8e2fb99_1529991361722_0.4554672927034511"},"_hasShrinkwrap":false},"1.3.0-alpha.9246a390":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.9246a390","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9246a390","@crave/farmblocks-hoc-input":"^3.1.0-alpha.9246a390","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9246a390"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.9246a390","dist":{"shasum":"3dcc4a20ef0873ea8d91a8c7cc357016992f1ba1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.9246a390.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-GivQUOFgBqeynxYpSxVka+Ly97aNPut0BVdoAAWaznRAdl6mb16MUgDsVfbyDpNaBwTbYJZa5phBixQ6vFesWQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYJA+9z+R7YFTwcRtdKo0oSOQKe3VcEf4YrPfJCsUQhwIgQS2SKWm+AGcoQY9QAfCASjFFWkHpyv85D9x6470ZxY0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.9246a390_1530034319082_0.29200616574546845"},"_hasShrinkwrap":false},"1.3.0-alpha.6e5fa181":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.6e5fa181","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6e5fa181","@crave/farmblocks-hoc-input":"^3.1.0-alpha.6e5fa181","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6e5fa181"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.6e5fa181","dist":{"shasum":"43b39f92a609abca10a75333b7a48e72dcee2686","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.6e5fa181.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-yQ5q/r0r+dF0/aMCpJAQnwLkpaOizp7bAPzNz+w/kYnnUqRexirKoVk+7kUN8ArqM1XRlQG1D/jhz6WpEqsJWg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDST+URD04XHay0Gp+A8iNuL85Dhw7XNlClHxU/fhRo6AIgR0YXz7OyPSl8xUA4mRiBK6ELC0wkhsDVWZ7BsCju1lA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.6e5fa181_1530036267307_0.8891194544997336"},"_hasShrinkwrap":false},"1.3.0-alpha.11f9c2a1":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.11f9c2a1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.11f9c2a1","@crave/farmblocks-hoc-input":"^3.1.0-alpha.11f9c2a1","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.11f9c2a1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.11f9c2a1","dist":{"shasum":"702919205b99ba7fa86656c5471625a6992e53d7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.11f9c2a1.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-9kwJcSSqL2iSFr2KBM8AJyzk5yanACzbhvTv8m5yW5iD7aRKpGTDFoHI3UwC/fUAhOdL9Hvr8pFoUOgux5kr3Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGd9VeTv+U6ZVrTFzHxEOVPi1m7a4AeDr59wYYiJCHYvAiBzvb8Gh1og0I2dBj4DK9j3Dcqimxp7NrH5QvC7Evnyrg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.11f9c2a1_1530100617098_0.13980211299768897"},"_hasShrinkwrap":false},"1.3.0-alpha.1d876ca9":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1d876ca9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1d876ca9","@crave/farmblocks-hoc-input":"^3.1.0-alpha.1d876ca9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1d876ca9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1d876ca9","dist":{"shasum":"512958e650ef63dfa3cfaaeb4072f2d2b4312265","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1d876ca9.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-4+s+KHGRT6nRVkazk7h7ota8362sF/zOsQCSevMdqb/1b/duWrGeBgGmjShiXRWC391lEVvrA94VRYvhbbFeGA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC03m9gPFw5Xub783zHISyX+VIQwys2BU7BOpDRukW9vAIgY4KcTxf4ohq3vVBxNkukQ8TOkKdAabRLBy+/dc5y68g="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1d876ca9_1530117675999_0.5401365534877722"},"_hasShrinkwrap":false},"1.3.0-alpha.df1c343b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.df1c343b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.df1c343b","@crave/farmblocks-hoc-input":"^3.1.0-alpha.df1c343b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.df1c343b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.df1c343b","dist":{"shasum":"c7da282b4579e7247383034d376ddf56d5d7945b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.df1c343b.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-ihhRdFiadh0aTA0/ByWRJGafC7/T+oPSOG9RrePDkD6NQqwGpX76CFzxDGetlqjq3UUTtqEW0qKHh1EI1X/4dQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAkWAZKQqQvyqTppTqNgb5aTIZ/BEN140/e/CH2noPB5AiEA2DqSOMAZaCR3AfhEd+OzJPbb7UaDgBf/olmJOsbMiM8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.df1c343b_1530297352864_0.08911775214798845"},"_hasShrinkwrap":false},"1.3.0-alpha.74ad35dd":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.74ad35dd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.74ad35dd","@crave/farmblocks-hoc-input":"^3.1.0-alpha.74ad35dd","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.74ad35dd"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.74ad35dd","dist":{"shasum":"fbe90ddc4967d8b9f0d805468822eb5d1d9f9fd5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.74ad35dd.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-T4aD18Pkgh2Y/tstNBkbQgEV1m8OiP2TFEj/H/kz1IadCzKt6xpNKYbgfPq89wPYeDK+chOWZiHGcEbhAaLr1Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLb20DBns88SFy8uTXPXCezhzYx0fiCHbQol9XUBB0CAIhAP6j0m64v/fPs0o7kN3YibXOcRVfacsjptYPdzpZf8Bl"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.74ad35dd_1530537451205_0.8788920822097057"},"_hasShrinkwrap":false},"1.3.0-alpha.3c7edc88":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.3c7edc88","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3c7edc88","@crave/farmblocks-hoc-input":"^3.1.0-alpha.3c7edc88","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3c7edc88"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.3c7edc88","dist":{"shasum":"eafe8953c4febf389b289625241fc830d7f7ac74","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.3c7edc88.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-Lg+t8VmeQYDY/DjpymKR8DID+WPeQTeXl2TFefs9Sw7corb27yzQBjaSSSGuH8+4XXYxBoVs7AfQar0JCa+ccQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFMlZjlZa3gMh9nAhlQIs4nVh/mfQgEv7JhRbpH9iUmsAiBNFm6wzuc0JLaR6BPGl04sfcgJQ3hKlFYhCe3IIq1tUA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.3c7edc88_1530538722397_0.013682449726489354"},"_hasShrinkwrap":false},"1.3.0-alpha.bd6ffcf1":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.bd6ffcf1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bd6ffcf1","@crave/farmblocks-hoc-input":"^3.1.0-alpha.bd6ffcf1","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.bd6ffcf1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.bd6ffcf1","dist":{"shasum":"301bcd3438d86d714aa88eb12c7cd64df5cd53cf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.bd6ffcf1.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-GFYelYAe27lMqAcN3unxlKD2Q9P3SLXKri8+qj2JOLkt7GmO3aiMJSuD837nDR4fZlHlMOFUl683h6CoEEXZZw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUkQGNwhEIbMoCWOol4aT6axUPhjePTOgQcrLfKkGNTQIgG8lfS9BLNMf7O9gEYED0GRVW5ARQkFKMsxMPfn5ySK8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.bd6ffcf1_1530623036921_0.3115965153613054"},"_hasShrinkwrap":false},"1.3.0-alpha.77ca0056":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.77ca0056","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.77ca0056","@crave/farmblocks-hoc-input":"^3.1.0-alpha.77ca0056","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.77ca0056"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.77ca0056","dist":{"shasum":"4068c4e71be230d8bae4e91c03d2ea84b2111e9d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.77ca0056.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-czsBEwnAfWT4Ph6a22SzwxdF6IISORJBlYKU7O0obKlaAnXo4wNBC1bx5jHMRUqap7A7yjKi6XbtiK3Rd0ONrQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdchdJ22KxBQDliJmKGy18kxIU97csbTqrRjtINrtp/QIhAIjglINNgUgRedow8qJT0wnB968p6Ur5YgZkeoSAa/UT"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.77ca0056_1530627748529_0.605498036403304"},"_hasShrinkwrap":false},"1.3.0-alpha.39aa4417":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.39aa4417","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.39aa4417","@crave/farmblocks-hoc-input":"^3.1.0-alpha.39aa4417","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.39aa4417"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.39aa4417","dist":{"shasum":"2221d8dc64cbc51c9de533118ac71db63b0b7e73","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.39aa4417.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-5Io7kj/M+/5GzXitiGBF89qkthBT3mj2XWuGVr5mDaBnQU+AdXGwqqLWi0SHTjjSJ2zFRpi3716ym0lZ+IpeVg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFCUDeIwIFyFIaNVRVUqCjL5A23UHDbZ1ZjHboZSWviCAiEApQCAuKq2sfxCvYfF2NWeRq4huzLtRFGFg+netuLKSr0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.39aa4417_1530634991882_0.8092423936628637"},"_hasShrinkwrap":false},"1.3.0-alpha.eb30fee0":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.eb30fee0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.eb30fee0","@crave/farmblocks-hoc-input":"^3.1.0-alpha.eb30fee0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.eb30fee0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.eb30fee0","dist":{"shasum":"7c9fefb573426bb87207deb320d6f5079d0c4173","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.eb30fee0.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-NoMZBK+xUV4FvCFgRoUZMBNfAaAhGR9IZbQt+TZSzSvMFtOXI92NOtTLypc72i0ibOcht55Q5F4u71RlSeeXVg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEf/HX57twtL/pb5LTu1X/0vaqylSS3VsmtMiplzKZYbAiAYncFuHml6scpHWL9jKS72bI7Qa+1brUPH4cgC5esdtQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.eb30fee0_1530641113492_0.31737650749333657"},"_hasShrinkwrap":false},"1.3.0-alpha.079f6b9c":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.079f6b9c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.079f6b9c","@crave/farmblocks-hoc-input":"^3.1.0-alpha.079f6b9c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.079f6b9c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.079f6b9c","dist":{"shasum":"5a074f2efae5824675809eef31a43cf058bd01b8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.079f6b9c.tgz","fileCount":13,"unpackedSize":27392,"integrity":"sha512-AQ3hAc/cY2JFSlADrb4r+rL8ACW83uKQGpID+tWgzk12/+3sw7T/AeqbFqZuTAOfOdA8fMzaD2bivaMeYUPLPA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCx0re+XqtjKgffuSj1Kfss7LnMkaA138jwhe+Pws44bAIhAPAFOYnwZIstOytEInRjaF83jyar1vibY6g11IegPm9Q"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.079f6b9c_1530649463492_0.07868158745963472"},"_hasShrinkwrap":false},"1.2.19":{"name":"@crave/farmblocks-input-text","version":"1.2.19","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.0.4","@crave/farmblocks-hoc-validation-messages":"^0.2.5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.19","dist":{"shasum":"7b50f3a5f6e7b31e1da0036841330c145b7354bd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.19.tgz","fileCount":13,"unpackedSize":27292,"integrity":"sha512-Avy67ZiVAEIZMHc6EqD+jaHq92LwSQe9CkG9kkffUxwTEthRGp9jlLwaklRJLFNuM7YgFC0ORFbvukLCf0rCdA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPG8oSkJt5bFZ7XBCfqFlgbKG+UwKxXp4tXwFP0rDxjwIhAP9CjoaIUw2dR1OjfMO/GlNGQGD0hK8PgwASsrbI1M1M"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.19_1530649907649_0.1048074510533985"},"_hasShrinkwrap":false},"1.3.0-alpha.de23b86a":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.de23b86a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.de23b86a","@crave/farmblocks-hoc-input":"^3.1.0-alpha.de23b86a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.de23b86a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.de23b86a","dist":{"shasum":"d438d5178b7e8696b9689c04bbe0a2f50dcae04b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.de23b86a.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-abwiXPoGBnZOTv6UBdsVZbZlXJXeDqOburVHfJXZykXqCywHP4TjnpVIEwxH21J46CU13g1WJiZoscrQK7TPHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDgMDnngpXAFC3SA5CIbDnll3HyXzLRXEsFS/mEdnGqVAIhAMPGV6Mjyv7k9aGCQ3GUmJn2mXYdxMO7rby1XXKdPKLV"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.de23b86a_1530710111149_0.9320272042764162"},"_hasShrinkwrap":false},"1.3.0-alpha.5bb97164":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.5bb97164","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5bb97164","@crave/farmblocks-hoc-input":"^3.1.0-alpha.5bb97164","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5bb97164"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.5bb97164","dist":{"shasum":"7c0cd69d908bb1951d719707451e958569a47eb1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.5bb97164.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-I6S+VI9j0yEZwIrK2nkw7SrCrrRNOZAbwS0tEB3aL4Y0uEaKix/nBN2gZxiS8EPSUjQvTLRGv6LsP1KCo0ihuQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHgeANCU3omNB6vJysaqCUzJutKxuTcKWQP0c3WUQg0mAiEA3ensN+ZCUpdf5MwO2IGN4SmgxWSZ+fVg5qyNWT84CI0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.5bb97164_1530712279590_0.6350206201175761"},"_hasShrinkwrap":false},"1.3.0-alpha.99a95534":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.99a95534","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.99a95534","@crave/farmblocks-hoc-input":"^3.1.0-alpha.99a95534","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.99a95534"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.99a95534","dist":{"shasum":"b2caddc67f20002977ab2a1958d3914b7dfff018","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.99a95534.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-HLd2C5Unq1c2ArD90dgKrXJ8kan9U6j8k7LOokFiZLh7aOaaobhmdJE1xt+SzvLcc0GTpbChZclIi/CHqitYVw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJ61qbzgiRcAACJq25zzIshTIfVWj5cbWojWS6mcUVKgIgFTzgFyo0w3M/2JdOORIT7Bmv/x2/hBx+npAd+DWRSYs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.99a95534_1530713910215_0.1874943707880965"},"_hasShrinkwrap":false},"1.3.0-alpha.e5322957":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e5322957","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e5322957","@crave/farmblocks-hoc-input":"^3.1.0-alpha.e5322957","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e5322957"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e5322957","dist":{"shasum":"f3699aeb9b08f949b481c93ee9ce68b3909e7f71","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e5322957.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-o58v3/GP3Olb3sY2mhXnxdPRYMQkgXuW/9yaITm+3rHrCHRprfdWF2ULgigDMA5UKW6KQfzJh/UgopSTcZQayw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH6MFE8wqYisyZDXUJ7f+xzV/CK8MF1ng2haVIfdpC0SAiEA3jGmiTBVLUDJc58xufLA78fpunte3lj98xy4yJBZ4gM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e5322957_1530730682377_0.33865160694351126"},"_hasShrinkwrap":false},"1.3.0-alpha.a7600068":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.a7600068","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a7600068","@crave/farmblocks-hoc-input":"^3.1.0-alpha.a7600068","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a7600068"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.a7600068","dist":{"shasum":"48ab20dd098972c49bec95907450ed8d03187403","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.a7600068.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-7FFJ9Kh1fGlXKMu4PC5I06xkX+ftpvWESh3KUpuzorAw1x3U1/kzl/7CBfYiRzLLpW+8+8Y2Em51tnEuBpDgBw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFTIlBndMAcV/q5CO6tZTOVDgAx6F8LD7JKnm3gUGl38AiEAjZaJeqI/WaBJ4Z4p8rmUwZNXQ3K/aTTwPeplqnxnEu8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.a7600068_1530810395781_0.25003277714401717"},"_hasShrinkwrap":false},"1.3.0-alpha.e56998d6":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.e56998d6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e56998d6","@crave/farmblocks-hoc-input":"^3.1.0-alpha.e56998d6","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e56998d6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.e56998d6","dist":{"shasum":"cf31dd392695b7c837b29255afb77ae500f1a148","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.e56998d6.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-KOG+DvmrPs+Fnug/P8FbcA9v73T1DRCdw2MbQKPr4e+JkGzLYto07NB5u7p9v1rd5ll3q0F0Y9AcSB+SkhRg5Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCep3teUoYxXh08ij0z0EFdY/oY5aRdjOeGmHLwruJS0wIgJLn0zhiB2xq6Cuv2b17pmU4CfYi7qkgmyTZYoyoxV5s="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.e56998d6_1530820711569_0.01221485083645657"},"_hasShrinkwrap":false},"1.3.0-alpha.89d940a2":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.89d940a2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.89d940a2","@crave/farmblocks-hoc-input":"^3.1.0-alpha.89d940a2","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.89d940a2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.89d940a2","dist":{"shasum":"b388b8c9ca34e46ec4604e926cf3ce04d8a97a97","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.89d940a2.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-NF+CqWHqPh5lJcvBiJADJgaOLDI9NQnqz9/wlqDLZJcOr+NNRbkbUQ7k//j0IFjeE4o8ac+FOwf+lQD4xPJBHw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDIZ6VroQ5J6G5AV98htDopJ6/64lKw4gIumiSj/6SVsQIgL/8RT6ZkCUA/jr8mHc8M2789Sv46ZTWy4Dy3aGRoXo4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.89d940a2_1530825973748_0.6978256726833529"},"_hasShrinkwrap":false},"1.3.0-alpha.51ddcf2b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.51ddcf2b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.51ddcf2b","@crave/farmblocks-hoc-input":"^3.1.0-alpha.51ddcf2b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.51ddcf2b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.51ddcf2b","dist":{"shasum":"0d4de50892651a949140398c3865d1476fb3b976","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.51ddcf2b.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-w7SEgGE3gt9BJb35Ch5GCNCSBxx7hoF1ZKVUwycf89Q0Aa6O7odGBGfC3uoCCmN141vLcZdhV9PZ917Z7FPLDg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmN9JvPhBbBrqyxhCMy0O901H1Mx1lrMHAb1NzSgkMRAIhAKGFVsHmAFTjD2fbWtrxyI1V8lAHINPKbg6AiiIgCm/N"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.51ddcf2b_1530828002986_0.23337551229260733"},"_hasShrinkwrap":false},"1.2.20":{"name":"@crave/farmblocks-input-text","version":"1.2.20","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.0.5","@crave/farmblocks-hoc-validation-messages":"^0.2.5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.20","dist":{"shasum":"6a26ed5eda89154b96c983e17c16d662539a8b5b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.20.tgz","fileCount":13,"unpackedSize":27536,"integrity":"sha512-wT3WPK4HXRVHrnlgqiz8ag+npO8eZJePnC7RYLNR3VjmqGAEuLbznpdhU0HpWTZxZYwHaGH19Vkqj2jjtV3zAA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDsfjlEmLUzPzw5IX314l8w0rg3Ou12zgr0ZDi2Fz8QQAiEAph4WOQPC1HJkAm6HR1Zm0by9eWycY2TQ8p3eLsotF8Q="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.20_1530898858417_0.7785878183567809"},"_hasShrinkwrap":false},"1.3.0-alpha.a87779f4":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.a87779f4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a87779f4","@crave/farmblocks-hoc-input":"^3.1.0-alpha.a87779f4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a87779f4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.a87779f4","dist":{"shasum":"25f3702298546fbca501f036db923d894304491a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.a87779f4.tgz","fileCount":13,"unpackedSize":27636,"integrity":"sha512-Mzi+W+eH95EBek6ylZPGFhC0YlMwGy1ofWSUvU4M8bFasjlZAzUAGVtd1qINtNbtQve9ACHzu06Goxm9zu+7Dg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBJT6Z9HxiaVOz2z2odJdUA0L2vpUiX+Q2ZLIt2+78GHAiEAutm5bPKaHXsg1dOGi4jgr2mpXiBeOjmpl0iOrlvSBMU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.a87779f4_1531138619050_0.6052927253564206"},"_hasShrinkwrap":false},"1.3.0-alpha.aae05c34":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.aae05c34","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.aae05c34","@crave/farmblocks-hoc-input":"^3.1.0-alpha.aae05c34","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.aae05c34"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.aae05c34","dist":{"shasum":"88e1c5778ac5bdd44296b4a06e4ecbb8c86c6aab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.aae05c34.tgz","fileCount":13,"unpackedSize":27880,"integrity":"sha512-arLqJvfn3AOq4NOArSThaTK/oT8nFAd6PsSxHCt3teD7Z9ZD6vOc4F+NxJqUB07Y8k6HeDq4QB8uSn963+m3Jg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDH0e4xn+1K+laJMEpK62dD3IKOOKGmuSRo33otTo5I9QIhAK/G13Ku76wTBIHOjUPZ4qH4fI81OHKPcKqD8xEaV8jN"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.aae05c34_1531139860281_0.8884981918586521"},"_hasShrinkwrap":false},"1.3.0-alpha.b17918e5":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.b17918e5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b17918e5","@crave/farmblocks-hoc-input":"^3.1.0-alpha.b17918e5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b17918e5"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.b17918e5","dist":{"shasum":"6a206ea89bd59de82e0ed0492bab26dc63629e00","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.b17918e5.tgz","fileCount":13,"unpackedSize":27880,"integrity":"sha512-25uceUmQQuCuf9eZehDlXK6xGNxojw99p1v64WLj7Ah0FEjPn4Wxa3boNgLfdxCL8k0/4vZmkxzsqNxRq3ACVA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGZmaOFoBy7ZAIFXrOQdaiyLDoG3XF9bzgukMWL7an7kAiEA9XpK15pP7y5XNLooS8D2gl6diRzQV9VagJA1uyPkpew="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.b17918e5_1531142397410_0.5071461852269261"},"_hasShrinkwrap":false},"1.3.0-alpha.f38f1aff":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.f38f1aff","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f38f1aff","@crave/farmblocks-hoc-input":"^3.1.0-alpha.f38f1aff","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f38f1aff"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.f38f1aff","dist":{"shasum":"19ff595cae7fe544d829e644afae29cb5bcdcca8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.f38f1aff.tgz","fileCount":13,"unpackedSize":27880,"integrity":"sha512-Fl3uZBPymFKwAAOEiW1/mQEQXXPLHR+GUNI9ZdybWnW3YQc+aXvEhsvwpz36W1gIdigLSClgN2FfD4OzlmnoSg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFqE3sPQeqXjdsuSgO1CiBQpIFhHZ7omwUh9tfcLQdBJAiEAiUgorXljUunVSTPRJUNpEE+2ktGfBx6WT8ssZTMALew="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.f38f1aff_1531153307944_0.7881479771205362"},"_hasShrinkwrap":false},"1.3.0-alpha.abcc3683":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.abcc3683","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.abcc3683","@crave/farmblocks-hoc-input":"^3.1.0-alpha.abcc3683","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.abcc3683"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.abcc3683","dist":{"shasum":"71d8f9d6450364f1c70bd82d0d09cd5112b18db1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.abcc3683.tgz","fileCount":13,"unpackedSize":27880,"integrity":"sha512-5C/qBNQID/Wyph+y6Rk3oiCOiQpV3zPW3gG3pn2Ni0mT9/ofp941AcQJ4cZZUq0B4KlVkXg+YYbHe1mghkTwsA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDPAvMkzM+s+kUzmSpaJ6Nbt378k5LX+NhfWjS+pc2tSAiAEGIdsjKX0F5apoJq99j3Nr4klgoO8HdzWz0/Kh1WtwQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.abcc3683_1531155891748_0.021806110105694332"},"_hasShrinkwrap":false},"1.3.0-alpha.81056d4b":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.81056d4b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.81056d4b","@crave/farmblocks-hoc-input":"^3.1.0-alpha.81056d4b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.81056d4b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.81056d4b","dist":{"shasum":"f26b678d600bcb6159df67ca9486df0b14b21644","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.81056d4b.tgz","fileCount":13,"unpackedSize":27880,"integrity":"sha512-JfoMHTNWH8gq4sZVWlrXUfXFSQeS8+A7kZVR7prdtglnBri6hoOej4JRcfujUy3ST04KCPcmMwGmQucNWG67Pg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICdqkZsc+IJyUpt5OouCwIVub3RNXWGvyl/FsoPqtUkqAiALCyrUUoVqfYQDKSqZtC2d/4vTpfqeSCasKikT6pRAqA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.81056d4b_1531161675291_0.6472894765566859"},"_hasShrinkwrap":false},"1.3.0-alpha.0c6db6ab":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.0c6db6ab","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0c6db6ab","@crave/farmblocks-hoc-input":"^3.1.0-alpha.0c6db6ab","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0c6db6ab"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.0c6db6ab","dist":{"shasum":"38cfaf0e28bd374227a2056bd701e48ec040c645","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.0c6db6ab.tgz","fileCount":13,"unpackedSize":27880,"integrity":"sha512-FuHRT94tiSfHwwoD3SsCs1l0CXdYFznQlZSZJwTtbwIX5OWhGhK1zqVsJ4gGucyi3Tc/tDWk32TAgjF1CDmlqA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZoJ7dkR2AfAjZlFbuJJYHrNLXbjU6R12IBGnh6ev+VQIgO4OqPri5gbnMookh+rJS9fhV8N2jVj7lrZUdxqZbGa0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.0c6db6ab_1531162014594_0.43169491755338196"},"_hasShrinkwrap":false},"1.3.0-alpha.42dad151":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.42dad151","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.42dad151","@crave/farmblocks-hoc-input":"^3.1.0-alpha.42dad151","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.42dad151"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.42dad151","dist":{"shasum":"8a0c749492c0b9c9b618b76c5092a7776bb1b03c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.42dad151.tgz","fileCount":13,"unpackedSize":27880,"integrity":"sha512-6sE2EAPZu7M9yeXhLHj0aa0u/QLJd0UFPomx6DKksPXqyQpCJS/M7OmTuMLpVnbgrdygx6Bp1fF1ZLgQMOZM5Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLMItGkhYzVy5YlC6+y1SL89EKtqogNcZ+MOoZAxKZUAIhAK6UqTU7oNPWF8Ky2lOIo0I51DguCQkEPQLYtyalLoha"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.42dad151_1531162566520_0.6650278560042306"},"_hasShrinkwrap":false},"1.2.21":{"name":"@crave/farmblocks-input-text","version":"1.2.21","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.0.5","@crave/farmblocks-hoc-validation-messages":"^0.2.6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.2.21","dist":{"shasum":"fb4365799296b71435827aa8ae2241e5f66ee333","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.2.21.tgz","fileCount":13,"unpackedSize":27780,"integrity":"sha512-lQ9deyVUyaFyYUnkJ1d/pG+WendVQjouHqfbmmVf3VdQG0G1omqREkrj3DYTIQ4LuW5TwYs+ZRemHZoJA2XHCg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCk3Eoa8iVxaJmZgm0ZTyZEjkiQmYMjg2OrUUo+19J3awIgHgL7sn8U4/mqnA6/5LbOsXnzvIjx1UE3y4Tdx9GW9Co="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.2.21_1531163223855_0.6516870279575426"},"_hasShrinkwrap":false},"1.3.0-alpha.dd4f6898":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.dd4f6898","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dd4f6898","@crave/farmblocks-hoc-input":"^3.1.0-alpha.dd4f6898","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.dd4f6898"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.dd4f6898","dist":{"shasum":"117e58f5523fee6eab848bd7f6db38e0984b7771","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.dd4f6898.tgz","fileCount":13,"unpackedSize":27880,"integrity":"sha512-QBdVngbvn+YOkz1MPkYBFUv/GTgCGxTgvaYbUMcm9YUdUD834Rn++KY/ssHJ3J0YwkC13ZbuBjCloN7hREXwUg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDt1+oYSkBXAzZ/winTs+iZ2HSG5OTUoWnAJVUQrXsehgIhAJ6r+m2F0eai08JSbWV+UzyecsRk5YenOJbON+4bDjFf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.dd4f6898_1531163848590_0.3590300978028833"},"_hasShrinkwrap":false},"1.3.0-alpha.96699fca":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.96699fca","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.96699fca","@crave/farmblocks-hoc-input":"^3.1.0-alpha.96699fca","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.96699fca"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.96699fca","dist":{"shasum":"5ef1940bd54db21b26a92549bd5ab529eee9c73d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.96699fca.tgz","fileCount":13,"unpackedSize":28124,"integrity":"sha512-ztcZpzy2M9393Fc0CRQDprTxiay3nJywjNuw8fKe0WjzdbTOCixMRQ/LX5vFzF9nbadRVJqZi53wTvvSpaI3kw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFTpBNy7i9MV3SJNlj2XETvkJHt1EwlQDURDKyiVkb3aAiEAkpMEQOEfxsGhbaB4Mde0/aAsO4FQ2cGx9GfJtY36diE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.96699fca_1531165217992_0.28254534101784423"},"_hasShrinkwrap":false},"1.3.0-alpha.77fe25ee":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.77fe25ee","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.77fe25ee","@crave/farmblocks-hoc-input":"^3.1.0-alpha.77fe25ee","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.77fe25ee"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.77fe25ee","dist":{"shasum":"26573e160fd738c177a8de17b6043de925a8a430","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.77fe25ee.tgz","fileCount":13,"unpackedSize":28124,"integrity":"sha512-tJptHZUCCv7/YF7m1iRtXbeVAEcya2kS3GBYYS76B4E0M+21PlPdBjkB72yx0R4vPNHVCaXFz2Oy3NCEElvCWw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD7mxs+kld1KLt/Zc/Qym6iBlbwnBSfG3oeA9dLuTNS8gIhAJIufNi3MbAfDb82T4X2nyaHFiUDIotO8jIIAheT6v5W"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.77fe25ee_1531166149166_0.8873997861276863"},"_hasShrinkwrap":false},"1.3.0-alpha.a113fe90":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.a113fe90","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a113fe90","@crave/farmblocks-hoc-input":"^3.1.0-alpha.a113fe90","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a113fe90"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                 |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                    |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.a113fe90","dist":{"shasum":"094a1d026fc2880dc11822a1be258005edf6dbae","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.a113fe90.tgz","fileCount":13,"unpackedSize":28124,"integrity":"sha512-fk2GdLHhoeb13qfkFg321qNJHySEccaadOd91SB6eGO41Mh2NChfi9lE44WDA+jOV4jp9Uk9jR55J4XrzAQdlw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCUjLQKaWW5BE1INEZnLQe4SvsBe++HDXx+Cs93LdVvKwIhAJPrhall3rN2bYQS7lYJ+mRYsODt6aZHKbPZSSYk13L9"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.a113fe90_1531167249115_0.9869820976900763"},"_hasShrinkwrap":false},"1.3.0-alpha.72fd5f91":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.72fd5f91","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.72fd5f91","@crave/farmblocks-hoc-input":"^3.1.0-alpha.72fd5f91","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.72fd5f91"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                          |\n| ------------------ | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                             |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                      |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                  |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                          |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                       |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes afer the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                    |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.72fd5f91","dist":{"shasum":"90d58daafa40b8c0dfa5739f30319cd2b5d1346a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.72fd5f91.tgz","fileCount":14,"unpackedSize":37479,"integrity":"sha512-+fdV+95bvzTQaaxm5685VeO3kMhbDABK4C/3NPKTlAoivzRkggBkPq9VVPgrKXDsf7V2Wp93H9+vqhSASFBczA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAhrcc+fIQm7VTS55vQHuBgaPT1zcJlDlm114VFkrhsPAiBbOrYsY8BCoBqUExFgDNz7/MISJs+CYeLaIPQj2W9A8Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.72fd5f91_1531174379386_0.6926816405709955"},"_hasShrinkwrap":false},"1.3.0-alpha.1a9e55bf":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.1a9e55bf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1a9e55bf","@crave/farmblocks-hoc-input":"^3.1.0-alpha.1a9e55bf","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.1a9e55bf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                          |\n| ------------------ | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                             |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                      |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                  |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                          |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                       |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes afer the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                    |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.1a9e55bf","dist":{"shasum":"43ad33295bd648345fbad09d3ee0c18909c8a82a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.1a9e55bf.tgz","fileCount":14,"unpackedSize":37677,"integrity":"sha512-tLfQBfAoLth05ZWt6c3zgmK9AHBHobyO6+dOAKCWv20Jah6Nb8kLCuTLflreGHxsANhNlecZJwpBUcX/aN5p9Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFS2ZVXonS5tymuliyRnj5A9qa1xE5vVAZMVYhsCqM90AiEA4k4UaZ6mLIq2Xxafz7tv1szQSPTEBTshABj8UVlziH4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.1a9e55bf_1531243226397_0.6749869142157783"},"_hasShrinkwrap":false},"1.3.0-alpha.81f8625d":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.81f8625d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.81f8625d","@crave/farmblocks-hoc-input":"^3.1.0-alpha.81f8625d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.81f8625d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                          |\n| ------------------ | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                             |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                      |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                  |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                          |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                       |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes afer the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                    |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.81f8625d","dist":{"shasum":"8cd798280de49ddb0880d597215de8cf8abf616e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.81f8625d.tgz","fileCount":14,"unpackedSize":37666,"integrity":"sha512-SScaomkYTRlqjHFbhn027dmiF3D3EXj+8djUwYmhRxu/+1TYFahN5DpaP7MHAJ3Ex1MquHb7RMebhcVzzmduuw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA0ieuSfzvLvbtc4zCuY1TLd8VOd5ewXj1ZD14TYzSbIAiBsnG2u++FHBUKz0f0drdSvkzcG/Etr3xgj5UcmUPN+GQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.81f8625d_1531244933848_0.15457319787903456"},"_hasShrinkwrap":false},"1.3.0-alpha.2a5219c2":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.2a5219c2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2a5219c2","@crave/farmblocks-hoc-input":"^3.1.0-alpha.2a5219c2","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.2a5219c2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                          |\n| ------------------ | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                             |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                      |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                  |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                          |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                       |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes afer the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                    |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.2a5219c2","dist":{"shasum":"10aa6e6306c4871f76b09ce67af9d9f2d07dbe99","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.2a5219c2.tgz","fileCount":14,"unpackedSize":37885,"integrity":"sha512-HXxeeBSQeqXzmh9VsUS7bFw9J3DDNYPoRG2PfFJGv5m6q+wwyV3MK2nEpZrIRsQK8KickdaiUsQcQcH51n9ang==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdWPK8u4HY4tBG1uDPihxAFohWw8U6w6GgvEX8yIKbxAIgXuuVHH/CuoKmkUv9mMDyUIvx3EqGN/VVjriuaSsKLaM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.2a5219c2_1531247981856_0.7034481031255804"},"_hasShrinkwrap":false},"1.3.0-alpha.07e93964":{"name":"@crave/farmblocks-input-text","version":"1.3.0-alpha.07e93964","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.07e93964","@crave/farmblocks-hoc-input":"^3.1.0-alpha.07e93964","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.07e93964"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0-alpha.07e93964","dist":{"shasum":"4a005c37cbfa4b946a8a7fd56e157ade1603461d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0-alpha.07e93964.tgz","fileCount":14,"unpackedSize":38039,"integrity":"sha512-gAdfFgOA7Iy1Cp/3vJEPOwTg1hsPQuoLSaBmOPppeEuPok4wohA74dl9o7zm59YBZeVpMvuw1eIbeJ08tY47Xg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlpNkJaBdXauss09xM/Su11oJMqIXt4hMXrM1BTA21gQIgJbIpPuY+MU2gtMch9U2zObSL2TKxmG6N6ecedlCKLck="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0-alpha.07e93964_1531249310923_0.8149136174824467"},"_hasShrinkwrap":false},"1.3.0":{"name":"@crave/farmblocks-input-text","version":"1.3.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.1.0","@crave/farmblocks-hoc-validation-messages":"^0.2.6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.0","dist":{"shasum":"5650189ec25097fe0d246c91fa3c8d8edcc17f43","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.0.tgz","fileCount":14,"unpackedSize":37934,"integrity":"sha512-0CjRzIiM0X5SRGWCm+S+ETKtIEJLS/dmJJ1JXreQWgcR1oopoR412W/7WYzBxd0HGEnDx2p2FRmYqXVlcXqPGQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID56B7Oe4Jt5GOXvPsKLsiWyJP1QSnuH3CycpYlZCIKdAiEAlvuYDwol9H3dgp8EaihuRzH427Or4TE5Zys3u/Muo2g="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.0_1531249969457_0.9273131990434222"},"_hasShrinkwrap":false},"1.4.0-alpha.870fb257":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.870fb257","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.870fb257","@crave/farmblocks-hoc-input":"^3.2.0-alpha.870fb257","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.870fb257"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.870fb257","dist":{"shasum":"99cb01fe9871ec8845b2e964f8d9a61a86b2ddba","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.870fb257.tgz","fileCount":14,"unpackedSize":38278,"integrity":"sha512-bL1TvDg1NWgTuuYpVveUfldydXb+pZCEdUdSHZtrsNMTatf/OxefIUdUl0xiplB8n35zD7gCPKRSKwlkSs4bbQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHBLPKmAbAsWKGX+utWTjo6VdjwRO0gOjOpG6L21mbF1AiEA1VVl3MlgCrPus7w330h+wul1StzZSdq62aD4TR/FEv4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.870fb257_1531321041287_0.8564076977623356"},"_hasShrinkwrap":false},"1.4.0-alpha.0c8ff882":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.0c8ff882","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0c8ff882","@crave/farmblocks-hoc-input":"^3.2.0-alpha.0c8ff882","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0c8ff882"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.0c8ff882","dist":{"shasum":"6fa96fd379a698667b63e3a8094eda2e6c8e586e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.0c8ff882.tgz","fileCount":14,"unpackedSize":38278,"integrity":"sha512-1OHbNhVPxKApGXNEINv0vM7viosqJ2k8MZNbNvIQ2WB8vCde1/4S9fgOpUmXmu0nh9FPvbc7AbddW2XBnAyIuA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHdIZ6dd2Xa3zMY8DtxSr/vnO4D/1Av1rpXnj3S1ZMsFAiAIG7RpRjJJHmMxPAjjuP2/ZGI7IWCEs4OTLoKZICF8VQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.0c8ff882_1531344051330_0.5610807519764083"},"_hasShrinkwrap":false},"1.4.0-alpha.4b14c449":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.4b14c449","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4b14c449","@crave/farmblocks-hoc-input":"^3.2.0-alpha.4b14c449","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4b14c449"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.4b14c449","dist":{"shasum":"f7b0d461351a6dddde593e406ce3b0e84908eeb2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.4b14c449.tgz","fileCount":14,"unpackedSize":38278,"integrity":"sha512-xl3gcmHZsMY4WA51Zj6BL8geUgOBSYUE/0zX+8OMxLFOCm0PSEJ/uvL0lJIjckt9qzAvX/5/xiOUA5IZHI+ZPg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzXgpK94iXLY7TeHiGxslqzrF8rrgemANYmlZtD3Pj5gIgSLyoVubBmsx3Z0fcaRb4Q1a4urv2J9EhtrE2LJjw3Ic="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.4b14c449_1531344740019_0.8111156972971765"},"_hasShrinkwrap":false},"1.4.0-alpha.0b75e71e":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.0b75e71e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.0b75e71e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0b75e71e","@crave/farmblocks-hoc-input":"^3.2.0-alpha.0b75e71e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0b75e71e","@crave/farmblocks-theme":"^1.7.0-alpha.0b75e71e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.0b75e71e","dist":{"shasum":"560c5909e558b695183d56d389c624ded87eee47","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.0b75e71e.tgz","fileCount":14,"unpackedSize":41240,"integrity":"sha512-7FTYd5T/rGQStJHmgbAYQLsDSXK091XzlGb5iw6BTeMvyc/+2QcjMljniwlmNJ36nnPPOaZTsMchJ7fBcaiytg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0QpDest3795o+Bj9Pe0xZj1q8/vQEq1//Qc4OFBofgQIga0+jBuS698dxrDa/eL0ZnowrptWvDHWjNtmhTHirTAc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.0b75e71e_1531398111924_0.4536327500590285"},"_hasShrinkwrap":false},"1.4.0-alpha.47583025":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.47583025","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.47583025","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.47583025","@crave/farmblocks-hoc-input":"^3.2.0-alpha.47583025","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.47583025","@crave/farmblocks-theme":"^1.7.0-alpha.47583025"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.47583025","dist":{"shasum":"ef23118f2c41845f24bcd710ab2a06d32f5f1bc1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.47583025.tgz","fileCount":14,"unpackedSize":41722,"integrity":"sha512-5Nk8QZHtqWA8mHzGQBUUDO4EdCHnf3L7dY7NK8LoTP8tYVZSPQbxZRH1GQ/i4CTGKH0mFYeezIaRVOxmpUIUJA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID/U+E2emV8uWtFk+RwRfVY3wYZeTAgbeB/iRk2OfdfPAiEAuwoekxD+LVt0moRa3xjj8yc52Y4/q56aqe0Vsj3lzAQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.47583025_1531400683495_0.8336900351538035"},"_hasShrinkwrap":false},"1.4.0-alpha.f8dae37d":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.f8dae37d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.f8dae37d","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f8dae37d","@crave/farmblocks-hoc-input":"^3.2.0-alpha.f8dae37d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f8dae37d","@crave/farmblocks-theme":"^1.7.0-alpha.f8dae37d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.f8dae37d","dist":{"shasum":"0bb7b503d40680df4cfe7ed20eac545acf256b11","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.f8dae37d.tgz","fileCount":14,"unpackedSize":41857,"integrity":"sha512-YjKw6CZL94SyfJgVAzM7FeeFHB1VUQSBZTpnMcvXrHg1q8nWBoip2/Sl8wZNEjrjRLVKCYVz/3FLDdfY6qeQJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCsO4aony6xaya815Jq+W3Ls7m/8QKG7Bx+QM7MPsUhXwIgTCZgMqVt0HEIgM+tnMOab5Vx8Gsemsiqt+D8R+iWFRM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.f8dae37d_1531402254605_0.7592077096292302"},"_hasShrinkwrap":false},"1.4.0-alpha.66f021e1":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.66f021e1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.66f021e1","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.66f021e1","@crave/farmblocks-hoc-input":"^3.2.0-alpha.66f021e1","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.66f021e1","@crave/farmblocks-theme":"^1.7.0-alpha.66f021e1"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.66f021e1","dist":{"shasum":"8bdaa7fca46240369ef9fa39fa80d5ec17116e82","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.66f021e1.tgz","fileCount":14,"unpackedSize":41857,"integrity":"sha512-PGlGqm/vhjnfRNBmH3mGiRBAyRhRc45b8QdVTNJcS3kM8pvdAjbi7oXj7PO8MsXMCMkqtNf6wsFVOIWxVahrCA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBC6mgZaEUAbUz9ZIce6Tj4YLOjk5Km2NXp1RWrwcWM0AiEA5lTUEToIhK6bgLcbW1YYUycV+ogp71PuhI5hl1vXUkY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.66f021e1_1531402891117_0.9387475135260619"},"_hasShrinkwrap":false},"1.4.0-alpha.96daaacc":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.96daaacc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.96daaacc","@crave/farmblocks-hoc-input":"^3.2.0-alpha.96daaacc","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.96daaacc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages`\npropertiy to present the returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.96daaacc","dist":{"shasum":"5d00f8384fc60857d82a1b42448efb17b81a147a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.96daaacc.tgz","fileCount":14,"unpackedSize":38278,"integrity":"sha512-iMW3Ep1f3IOhWr1ZQtW13CDnW/wnGoyv85ROmjtLLbPIxIlnkVo2nPqjzlNfu8y/QU6KuhBLbJl1HGdMdZnSUQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpHZLdtQcTmksGXXWlgrsUjWQ5UDladj/eW8dyuVIb+gIhAJ0GNRflGqoNKBfszXeNwRb5s/zuZcExXOkJUc4KN/zC"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.96daaacc_1531403669640_0.9065278256228491"},"_hasShrinkwrap":false},"1.3.1":{"name":"@crave/farmblocks-input-text","version":"1.3.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.1.1","@crave/farmblocks-hoc-validation-messages":"^0.2.6"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.3.1","dist":{"shasum":"77c933a458015ff237368dbd13846e8052da5085","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.3.1.tgz","fileCount":14,"unpackedSize":38174,"integrity":"sha512-gnUj0kbxngo9jTFEsoBroK3/11/5oR89zHmMmBgQtrLuusBLmWUTbYbzPQUjaAr/QLrhi+6ofGUqauWNrcwQTw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFhdmgRCdrRhgf0+KvD/0otvKOP68UXAu0RopxKclt1IAiEAhg6TufN59MBXlt71jFUFiac1hZhg+zZR3Pwvl7EiHCs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.3.1_1531404880670_0.8730827965373074"},"_hasShrinkwrap":false},"1.4.0-alpha.14426014":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.14426014","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.14426014","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.14426014","@crave/farmblocks-hoc-input":"^3.2.0-alpha.14426014","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.14426014","@crave/farmblocks-theme":"^1.7.0-alpha.14426014"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.14426014","dist":{"shasum":"ef10e2b754270833a3ee25eb84d75ea2545ca805","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.14426014.tgz","fileCount":14,"unpackedSize":42569,"integrity":"sha512-kfrpdtpU/LV+pqXFHzJjSLd9ctSqYdHZsS5NisO9Pu1VuSvvZ4ZXk+VMRbcXUIVNS2iEVHOME8iLkWT1S/YWLQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF1Bcl8rYf7jgXBXIlgk2IUK0CUaTFJYy1/UScX7IzZ4AiA6N0gLgfD+CvjlIbXSpZjnLTcW0i8aKi38wHxmHDhmdg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.14426014_1531408016174_0.4557862015882499"},"_hasShrinkwrap":false},"1.4.0-alpha.a3feb48e":{"name":"@crave/farmblocks-input-text","version":"1.4.0-alpha.a3feb48e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.a3feb48e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a3feb48e","@crave/farmblocks-hoc-input":"^3.2.0-alpha.a3feb48e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a3feb48e","@crave/farmblocks-theme":"^1.7.0-alpha.a3feb48e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0-alpha.a3feb48e","dist":{"shasum":"fb4ef6372775afbf1d7a6def3f4292f840bf58c3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0-alpha.a3feb48e.tgz","fileCount":14,"unpackedSize":42809,"integrity":"sha512-HrAcbrUZv45unBQq6GmZXnK9mmmNjgcvDWIN1rId9+ad7LTUoghXz1lre46OYaOTQGCoFLYS0UUWUgr6GWLC9g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAiCU63rmnlP75B4xPrporKzpV01PNd5vuDlS982Ky7AAiEA+zhDHFlcjEPgIUJkIPPXNvbOAT1ib8AYFlacFFRA/as="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0-alpha.a3feb48e_1531408240151_0.5817671806126281"},"_hasShrinkwrap":false},"1.4.0":{"name":"@crave/farmblocks-input-text","version":"1.4.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.4","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.1.1","@crave/farmblocks-hoc-validation-messages":"^0.2.6","@crave/farmblocks-theme":"^1.6.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.0","dist":{"shasum":"9356e51372524c47fb06f7279c0ec52f9923de1d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.0.tgz","fileCount":14,"unpackedSize":42674,"integrity":"sha512-t7IQlobZLXbRFugIFza8k7FKeGsIS6lD3pWaGuSzNVLgp/UuHO6tj4fVM4ztPScm2gANnSgwc+VR6gSQpON0Vw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICHJPVdTdmTOsrDcSXrlOd1Ep2R/WxC7nWytUdSE0tCmAiEA8LVEWq6JTLnOHc//W37zE0iXkLojiyKOLGcIua/MXQE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"fczuardi","email":"fabricio@fabricio.org"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.0_1531409242578_0.9339032785713457"},"_hasShrinkwrap":false},"1.5.0-alpha.09982a08":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.09982a08","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.09982a08","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.09982a08","@crave/farmblocks-hoc-input":"^3.2.0-alpha.09982a08","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.09982a08","@crave/farmblocks-theme":"^1.7.0-alpha.09982a08"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.09982a08","dist":{"shasum":"e6d3860806dbf11a8d4d841403116c4b76b8807d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.09982a08.tgz","fileCount":14,"unpackedSize":43048,"integrity":"sha512-R6dNb+Yv+faqTnTlTGrmt/3WQAqh5pizKB2rWYkRptf3OVVlanaoXEBKd4RDxkLXhnfjYG3Sz2PVdSsceyjJtg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0nDSMtajB2BNKox1zszqrA5VDQVcULX6BhFBBUNZ3gAIhAID789kq4i88nR0WFhJa8mLiRKJelE1LE5TjUfqOs2rv"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.09982a08_1531509408360_0.6988322043472401"},"_hasShrinkwrap":false},"1.5.0-alpha.e2104edc":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.e2104edc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.e2104edc","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e2104edc","@crave/farmblocks-hoc-input":"^3.2.0-alpha.e2104edc","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e2104edc","@crave/farmblocks-theme":"^1.7.0-alpha.e2104edc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.e2104edc","dist":{"shasum":"1ff0990b9e12a5cf3ced6271357dadedcc856e54","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.e2104edc.tgz","fileCount":14,"unpackedSize":43172,"integrity":"sha512-VBctngesgATR6GjFe3D+j+NaJj6Yqx4ZgFfH+5GoReR9k7kmd7lUd0bRHbFj/2P/w9sutNv6cZcEt6vgufZd7g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqZAaXMQ2VLSfvg37fDsxRty6R94aLcNovC64hmbaJIgIhANb33ezFcy58OnRGUr4dVEzpdW2j1relq9wKvQYv/+Pa"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.e2104edc_1531745627453_0.6454993198032166"},"_hasShrinkwrap":false},"1.5.0-alpha.fe2d60bf":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.fe2d60bf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.fe2d60bf","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fe2d60bf","@crave/farmblocks-hoc-input":"^3.2.0-alpha.fe2d60bf","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.fe2d60bf","@crave/farmblocks-theme":"^1.7.0-alpha.fe2d60bf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.fe2d60bf","dist":{"shasum":"dee6b5710918334cf6d9c1938f5076b072b3d815","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.fe2d60bf.tgz","fileCount":14,"unpackedSize":43172,"integrity":"sha512-RifHq7+C59aWtrqypaEKEOBnKXMARlqvZkfdc3Vt/B9Lr2sgsjgReRdBGjDXWYF7fegUby5XyZFzClc5308Pkw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGbFrkdNC9Jitx//tJCVkAWLzB6dYHm82tjH1HXSBPHdAiEAr/nDFUxDkXV9YlE0IqNNYZXSKUt9iNT2nBSswCGyDQM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.fe2d60bf_1531751925052_0.9191454022743182"},"_hasShrinkwrap":false},"1.5.0-alpha.d249c1a8":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.d249c1a8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.d249c1a8","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d249c1a8","@crave/farmblocks-hoc-input":"^3.2.0-alpha.d249c1a8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d249c1a8","@crave/farmblocks-theme":"^1.7.0-alpha.d249c1a8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.d249c1a8","dist":{"shasum":"2c9b92873a329b1293d9fbf7fe6dad72992203a0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.d249c1a8.tgz","fileCount":14,"unpackedSize":43172,"integrity":"sha512-c+OG8u9s24Pow7xF/Hizrk+7EMzHOmQFAjtQQu433zUVRIKGt2azg2hefIDju6+OjFQcACyBZcdqB1Vn7Kzt6A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIALbTp1C+bkyC0hXs5cVXtx3mQwwl3Pk/Fa9sWI9dIQ9AiB0kEZHFy5CQaNbr72KjihFyfgMfit/Xw2DciozDIz/Aw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.d249c1a8_1531751998570_0.010609186405905913"},"_hasShrinkwrap":false},"1.5.0-alpha.fe687acf":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.fe687acf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.fe687acf","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fe687acf","@crave/farmblocks-hoc-input":"^3.2.0-alpha.fe687acf","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.fe687acf","@crave/farmblocks-theme":"^1.7.0-alpha.fe687acf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.fe687acf","dist":{"shasum":"b5c2654c889f94a7fe24d55a91e88e3abdfed9ab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.fe687acf.tgz","fileCount":14,"unpackedSize":43048,"integrity":"sha512-Orel1JEY+t86tRxXpAbszpSslaLQtFI4LqldmLi5J35e5bgDh2KtxaUqpW6WWQVSAB0Yp8a5iIZcm4CGlDXJ+A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDkvN7QefdYyS4hsm4HmV1dWzx3mDSUoxbOgoP2C3F/sAiBjd/5i4EYWCojCBP2A+Em+lZcphllvvj+DfdoIOfosXg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.fe687acf_1531820000607_0.3680079332678814"},"_hasShrinkwrap":false},"1.5.0-alpha.f2bf40a9":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.f2bf40a9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.f2bf40a9","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f2bf40a9","@crave/farmblocks-hoc-input":"^3.2.0-alpha.f2bf40a9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f2bf40a9","@crave/farmblocks-theme":"^1.7.0-alpha.f2bf40a9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.f2bf40a9","dist":{"shasum":"0cfe9432b79aab6662059bc61fad670255c82837","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.f2bf40a9.tgz","fileCount":14,"unpackedSize":43048,"integrity":"sha512-UYrgkYq86F18QfK90lrM2O48L4A4e9x6zihLgkO9D/M47iO8FOAtOoHq6qx5JIgn+lBg3KXin+uEH48cCFnyvg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHDbEG/5XSTLk9kYG2t3k7OqoI2QsFo4EtVlVhBrcuukAiEAvqXwTnICqK7RA7wx3uCnAMDRLWGIvb4BiZ9Nxq8cA5c="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.f2bf40a9_1531833593266_0.1882567547577365"},"_hasShrinkwrap":false},"1.5.0-alpha.2372b0d4":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.2372b0d4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.2372b0d4","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2372b0d4","@crave/farmblocks-hoc-input":"^3.2.0-alpha.2372b0d4","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.2372b0d4","@crave/farmblocks-theme":"^1.7.0-alpha.2372b0d4"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.2372b0d4","dist":{"shasum":"fb15ae65f537ba101cd983435f0f83c66e97fe7f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.2372b0d4.tgz","fileCount":14,"unpackedSize":43172,"integrity":"sha512-vtOugJsvSFqE9xAaPPDvw02MDRAlCT3nbsc40uJXSjZqjhQmm4zbWVUx2NOFSvb59uNVyf+Gw33RFRRR7F/2aQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGEYR2w3YY0lrdyUbNipMu+Zu0kyG279hXlocbOz3yD2AiA4OFXW9ihYO8zawVgMh22zBsZHuVi4/35y9IFxbzf5Pw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.2372b0d4_1531920011802_0.9589686764346135"},"_hasShrinkwrap":false},"1.4.1":{"name":"@crave/farmblocks-input-text","version":"1.4.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.4","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.1.2","@crave/farmblocks-hoc-validation-messages":"^0.2.6","@crave/farmblocks-theme":"^1.6.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.1","dist":{"shasum":"9152e91a9631c63550eaec95a513677a49e11016","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.1.tgz","fileCount":14,"unpackedSize":43038,"integrity":"sha512-J9T1m19EHhu8HhqEMrI62Sl+Ru/VulbNNEioXGbBLg6a8rZPrM57Y+tdW0lIo1ybvVClaHGBRWpaSvLOSlXTFg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG1m7M/0kuI5NGcQNM6LvtgyIGL5vK1M8wpt3aKD8AW3AiALbX4bs2TCVTsUj3j4tauAP6iv6MAxQn3k4wQ67waLxg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.1_1531920670718_0.8194264699761187"},"_hasShrinkwrap":false},"1.5.0-alpha.3541e4fb":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.3541e4fb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.3541e4fb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3541e4fb","@crave/farmblocks-hoc-input":"^3.2.0-alpha.3541e4fb","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3541e4fb","@crave/farmblocks-theme":"^1.7.0-alpha.3541e4fb"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.3541e4fb","dist":{"shasum":"14c9a58900733fe73329c5525f9c266884f0f480","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.3541e4fb.tgz","fileCount":14,"unpackedSize":44584,"integrity":"sha512-Kjlk0vWvUi0XK4Fv3FBBhXIrKJCkteNlHT2H+A532IhQ08QBxxLVw4kNwHi3MrStykd/SVFo/YB2heefoIY31A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCljNfnPdODnnJ9eLeoFncIpp+gGaMibb1aMCasixpt6AIhAL5H7nXQyudvOPAJkJhRE0a7+RT6yxiPwlZlBCL19QzK"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.3541e4fb_1531939566149_0.6045769483786285"},"_hasShrinkwrap":false},"1.5.0-alpha.20185dbd":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.20185dbd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.20185dbd","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.20185dbd","@crave/farmblocks-hoc-input":"^3.2.0-alpha.20185dbd","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.20185dbd","@crave/farmblocks-theme":"^1.7.0-alpha.20185dbd"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.20185dbd","dist":{"shasum":"a17815c6dcd7a8edb1155f7bbe24c7ac425419d8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.20185dbd.tgz","fileCount":14,"unpackedSize":43412,"integrity":"sha512-j3NbwKGHEZ0KMMJHWD5gmHlGcgE9UH5OPL8jONsV6/VwmGeaeeP+p0+wSmH9cUNZ++ArxM0AHoPSaHfTKrDmog==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHKPh9JAruz1o7YS0r8eBw6q7WBn2kRKakqrLUlALts4AiEA1GJwI8xjAuczYCzl1onCXpwwDHSt2NLGtmzJm4BT9pM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.20185dbd_1532011274548_0.4088849523524034"},"_hasShrinkwrap":false},"1.5.0-alpha.30efe03d":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.30efe03d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.30efe03d","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.30efe03d","@crave/farmblocks-hoc-input":"^3.2.0-alpha.30efe03d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.30efe03d","@crave/farmblocks-theme":"^1.7.0-alpha.30efe03d"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.30efe03d","dist":{"shasum":"b66913a128ee9e6ac3c4658226cf90dea6de6ba5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.30efe03d.tgz","fileCount":14,"unpackedSize":44584,"integrity":"sha512-dOv/JmU7php0s15AslUpZFzuM4WvOxGSMkgcXwO5t1u3u2KA7a89Eab53HiYtVFTjB8MIx5+6/XsvDawmhrExw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3FnqGo1pDlP3ALFW6QUXn8sJt5JepqMmMl4VoWMuECgIhALGB/tjUPRxKUs+BsEN5svqFmWR8qHoAOE6OGnHWhPyB"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.30efe03d_1532011287755_0.04476952523162647"},"_hasShrinkwrap":false},"1.5.0-alpha.792d3ae8":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.792d3ae8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.792d3ae8","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.792d3ae8","@crave/farmblocks-hoc-input":"^3.2.0-alpha.792d3ae8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.792d3ae8","@crave/farmblocks-theme":"^1.7.0-alpha.792d3ae8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.792d3ae8","dist":{"shasum":"c9e7a34b3f67db483f4259246603dfd927eebb74","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.792d3ae8.tgz","fileCount":14,"unpackedSize":44948,"integrity":"sha512-39C8Mz1FHhdm4xOo0TdNZZok20sWB1Oldfcrvap8pLhkngYVHUEYvzosTWlPI/ur0OavJhIFVNCokgAzGVpgEQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCx3wb2iVU9XYOxwxzw2hJvLatnw9QtM/NVl0gKARh2EgIgKWTzx2APKtlvlg4UYXZqKyprbrQsPOuttwG8YT2Oawo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.792d3ae8_1532012145829_0.6636927709947849"},"_hasShrinkwrap":false},"1.4.2":{"name":"@crave/farmblocks-input-text","version":"1.4.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.4","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.2.0","@crave/farmblocks-hoc-validation-messages":"^0.2.6","@crave/farmblocks-theme":"^1.6.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.2","dist":{"shasum":"e662a34a19375a8086bc1413d7883673f613f7f4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.2.tgz","fileCount":14,"unpackedSize":43278,"integrity":"sha512-pHPWW9AugWYqA+fTqGsE/UZ5pXmdtGOkj1eQ0+34Vaw0lF9KhdoO2Y3RS1DdP9CIVV23xevIAMXgbhkPQM3H6A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMRDeDnJKYIHcRAoJjUHJgyGOQQI9vfrSVT6AesDnQUgIgJRhIEDipw1WN+VbzT5S+vG+lmGwc+zAclwHVWrOPCTY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.2_1532018070544_0.4008134823225791"},"_hasShrinkwrap":false},"1.5.0-alpha.7cec0a98":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.7cec0a98","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.7cec0a98","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7cec0a98","@crave/farmblocks-hoc-input":"^3.3.0-alpha.7cec0a98","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7cec0a98","@crave/farmblocks-theme":"^1.7.0-alpha.7cec0a98"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.7cec0a98","dist":{"shasum":"de3ada26b23d044eeabc3cd8cb655143cae955cb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.7cec0a98.tgz","fileCount":14,"unpackedSize":45188,"integrity":"sha512-RvEGF+0HsPV8pvWIUIqprvxsPE0ifegrMeFCZHvow6lKqL1Cjdb+kAWPNQTYd/ztm9u2p/slbQ0WFwa7iX7STA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdHFX1h4afLZLyWo5Fi5tYq1r+KXhe7mijxVj5TYXWygIhAPsCOR3SkmxK0YfwW9D0OeubpFKf8RhWxVDvyhFcdbyJ"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.7cec0a98_1532027739023_0.2674630507647451"},"_hasShrinkwrap":false},"1.5.0-alpha.35dc97e0":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.35dc97e0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.35dc97e0","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.35dc97e0","@crave/farmblocks-hoc-input":"^3.3.0-alpha.35dc97e0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.35dc97e0","@crave/farmblocks-theme":"^1.7.0-alpha.35dc97e0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.35dc97e0","dist":{"shasum":"59f3172d94fdb41504641060df2269dae8ce8e3a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.35dc97e0.tgz","fileCount":14,"unpackedSize":43652,"integrity":"sha512-fPSbBg6tPmg8mDIHxmPpYRbKvqGne1DzvzNpYI0YdcWwDVPQfTgpZDtxNIAROG7xUXksJI4domGsCzu00nZLtg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDTBIUTgCh1DxN+TDN99jJu/hEY4MDC43KuXGsVbplaDAIgWQwf5SFyAodvvcEZAmxvE4fQX1GfauIVRF+aJUhM/Wg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.35dc97e0_1532029177302_0.5173567023738355"},"_hasShrinkwrap":false},"1.5.0-alpha.ebbbcf26":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.ebbbcf26","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.ebbbcf26","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ebbbcf26","@crave/farmblocks-hoc-input":"^3.3.0-alpha.ebbbcf26","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ebbbcf26","@crave/farmblocks-theme":"^1.7.0-alpha.ebbbcf26"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.ebbbcf26","dist":{"shasum":"66f4b2fd7d9d3ab8fcc7afa59a82fb703f95fec2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.ebbbcf26.tgz","fileCount":14,"unpackedSize":43652,"integrity":"sha512-eW0hrd1xsR08m7/iJkr3ZzGmoiSOOxHRNt9pGQuFN+qatmy9/h+AquDNUwd4qtv7JtaXaJdZMG1LgXBtShLOoQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1AS8pg1n0HX/hh1Wo/po9gT+VotNNB8HvKina9+yqjwIgN3L4KwPYYGSwNSl6A3CnAQv47p7csz/58IJc3LX/XVI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.ebbbcf26_1532030656247_0.7485239923774727"},"_hasShrinkwrap":false},"1.4.3":{"name":"@crave/farmblocks-input-text","version":"1.4.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.4","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.8","@crave/farmblocks-hoc-input":"^3.2.1","@crave/farmblocks-hoc-validation-messages":"^0.2.6","@crave/farmblocks-theme":"^1.6.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.3","dist":{"shasum":"0793f5bac9233cc8c0c0cb95d5500ed7192dd844","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.3.tgz","fileCount":14,"unpackedSize":43518,"integrity":"sha512-pkffK0jq46flJHaZJSpRnww5C1anmpFUzteLlaWy2rqBprdBJm1nrLUBwNxsMPr96W3NBOakMXG6QvgjaT6LUg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHMVfTkeKRBOUxDFSwY8vZ8MGR4N8RtrrXom6ToL6FtqAiEA9M0+kMWrBh03nS2GOsAJQn6wqUFV8wJGFaKjHjJmrfg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.3_1532034937927_0.9753682974997939"},"_hasShrinkwrap":false},"1.5.0-alpha.9d0d7e53":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.9d0d7e53","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.9d0d7e53","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9d0d7e53","@crave/farmblocks-hoc-input":"^3.3.0-alpha.9d0d7e53","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9d0d7e53","@crave/farmblocks-theme":"^1.7.0-alpha.9d0d7e53"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.9d0d7e53","dist":{"shasum":"ffff78140968819e0bcb8204c293309ffca79d08","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.9d0d7e53.tgz","fileCount":14,"unpackedSize":43892,"integrity":"sha512-KjanA0+TT3carFI/Jy2NYpQcy76zM6JKyCcDiwWGM373lqVk6l9Y8T1uxXQoUrZmS+wWNlBosDfDmB7zFIPYbg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChQoMYc//JT6LBJdDZplcTkWUUzhkocVJD1LYLiUy8XAIhAIn/JoVuxEc8uEMJKht1bqKpe4ZqZdrSuq33Vs7EMwXc"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.9d0d7e53_1532115252049_0.5736916348807664"},"_hasShrinkwrap":false},"1.5.0-alpha.516f662e":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.516f662e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.516f662e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.516f662e","@crave/farmblocks-hoc-input":"^3.3.0-alpha.516f662e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.516f662e","@crave/farmblocks-theme":"^1.7.0-alpha.516f662e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.516f662e","dist":{"shasum":"c4315015d846a9ee00e8c1cc15ed1ba09105604f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.516f662e.tgz","fileCount":14,"unpackedSize":43892,"integrity":"sha512-Q092oZP8tpyU82GBe4hBv8gDiRQb4JHjAsjzvtGJx1a9cE+KqyvYUgnpEiDP4PsGVxtPBNC8d3aobiv/P2ce9A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFDx5osePbUdDxxNYg+DO+mX/yJ6dvPPRv53DK49c/R9AiEA4kRYw5W366W5VL9OUoGmvrmu0onnxQ0MaUklbgIbydo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.516f662e_1532115432335_0.25397611608985904"},"_hasShrinkwrap":false},"1.5.0-alpha.56e0f23b":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.56e0f23b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.56e0f23b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.56e0f23b","@crave/farmblocks-hoc-input":"^3.3.0-alpha.56e0f23b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.56e0f23b","@crave/farmblocks-theme":"^1.7.0-alpha.56e0f23b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.56e0f23b","dist":{"shasum":"08921455a4b025fd504db74f345a232c25840ef6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.56e0f23b.tgz","fileCount":14,"unpackedSize":43892,"integrity":"sha512-LK1p7cpzIAjIiBQP65XicVbccJy/U6HEjCcsJz3LBh/9FZZ7l8IWLBc2xZQ7lAAQDCibD6VDrnSwAI69fbAAQQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGt+cuHWuoC5MYT60fiybDmUOy1PGJbndV6ni+Y+hwdAAiBfqRQEc3LJVMMeg3u4kgp0UlEKMopO+ImV4P7D7sq/wQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.56e0f23b_1532116450397_0.5122708225753678"},"_hasShrinkwrap":false},"1.4.4":{"name":"@crave/farmblocks-input-text","version":"1.4.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.5","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^3.2.2","@crave/farmblocks-hoc-validation-messages":"^0.2.6","@crave/farmblocks-theme":"^1.6.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.4.4","dist":{"shasum":"74113387fc80d3ea2a4f6c17d8fe873c28a97cd4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.4.4.tgz","fileCount":14,"unpackedSize":43758,"integrity":"sha512-1JQCRJXy98u2Fr83IFfOjcZ6+URd7ayOEMfrNPLQSOrogKyD8wrf6+J3tAvFaqV6QyXJdr4cGmeoZnWtv0YGUQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG0N4s4XxPXmiYNHDIG2DiHm4wyFdzLele9fUI5zAYxlAiBO7uaMXzOIaQ4PezbXKB7NQL151fG6h18TYegGow4G/Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.4.4_1532117164597_0.03519795068389553"},"_hasShrinkwrap":false},"1.5.0-alpha.f4e9d2ac":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.f4e9d2ac","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.f4e9d2ac","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f4e9d2ac","@crave/farmblocks-hoc-input":"^3.3.0-alpha.f4e9d2ac","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f4e9d2ac","@crave/farmblocks-theme":"^1.7.0-alpha.f4e9d2ac"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.f4e9d2ac","dist":{"shasum":"b856f4681b6808282fd0c00ceba9128f3449790e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.f4e9d2ac.tgz","fileCount":14,"unpackedSize":45661,"integrity":"sha512-rvf5LiLSlafUBl9Vea3f78y1brlJJ+sfSznvh69nenEsuVk8w/f0ApHaEKoJcToPw7yWG60C4FZtdqCOrddXug==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGHe/T/ZBnK1l8/N6bxGhrCE+T5+Ym2mzoXvVAUruoksAiAo901XJ9yiOGwhx/TOkYVQtisI2rxUtxh+e/YewXvO2Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.f4e9d2ac_1532364486977_0.5830919393935754"},"_hasShrinkwrap":false},"1.5.0-alpha.3f9920d9":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.3f9920d9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.3f9920d9","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3f9920d9","@crave/farmblocks-hoc-input":"^3.3.0-alpha.3f9920d9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3f9920d9","@crave/farmblocks-theme":"^1.7.0-alpha.3f9920d9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.3f9920d9","dist":{"shasum":"da9a474fd37c2eaa2c9f7dd34a56b1e01dbe4d50","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.3f9920d9.tgz","fileCount":14,"unpackedSize":45661,"integrity":"sha512-GrR1J6r22vywujvDY1F+qvHnE7LXIKN+REZcZTy4F1sUJI0DLjaRh6w5Lduag9Xz5U1YwZVrvyACev7tWcw//Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFDCWu4TwpVkg3AolWuErylK5F3dQCzce9GVUJOJS2qdAiALrVfWSeCMgvyXH4aLrvZdXV8nS3Zzkb36JlIND+/ZRQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.3f9920d9_1532364528467_0.13889258557433926"},"_hasShrinkwrap":false},"1.5.0-alpha.79069917":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.79069917","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.79069917","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.79069917","@crave/farmblocks-hoc-input":"^3.3.0-alpha.79069917","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.79069917","@crave/farmblocks-theme":"^1.7.0-alpha.79069917"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.79069917","dist":{"shasum":"ad930dbd7b4c4a47c66fa8f9a15420f3c50f0894","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.79069917.tgz","fileCount":14,"unpackedSize":45661,"integrity":"sha512-M64i2NBn3u87XljI58K0z4H6608aUKznkzy2/EXp6BPh818qNMfhfJDEJUpFHcW8tw1xlDtvFLqUS13vKXIBvA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCN1N1g2LA4kIjmuASQ9UqqN0J0vE95eOINWhattBiWOQIhAKBEHnMkCMiosWg65+SnRA2y8LVH5PX0tzEfi1Sb+VmA"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.79069917_1532369247279_0.5235570418604767"},"_hasShrinkwrap":false},"1.5.0-alpha.9b6c1b4b":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.9b6c1b4b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.9b6c1b4b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9b6c1b4b","@crave/farmblocks-hoc-input":"^3.3.0-alpha.9b6c1b4b","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9b6c1b4b","@crave/farmblocks-theme":"^1.7.0-alpha.9b6c1b4b"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.9b6c1b4b","dist":{"shasum":"baf00d8a7eeddde7cdf147319b02d72bad75f82d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.9b6c1b4b.tgz","fileCount":14,"unpackedSize":45871,"integrity":"sha512-IzrivPSJLn3rpE9NDi50JtO2oobc8nOLDuLo4zDFqx/xKsWRI5+HNtcYJz2vZYbmIbovL+ilJjk6xIloCe0PKw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBvUoiTf2ft5DoWsQoM7Rjar5jzvipj281LcqsIgcH99AiA9FLaEvcIiWPSYXluNjETUOzEiqyUhfhJbwd0MK1DmKw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.9b6c1b4b_1532451694816_0.5157742858680918"},"_hasShrinkwrap":false},"1.5.0-alpha.e1c0bdcf":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.e1c0bdcf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.e1c0bdcf","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e1c0bdcf","@crave/farmblocks-hoc-input":"^3.3.0-alpha.e1c0bdcf","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e1c0bdcf","@crave/farmblocks-theme":"^1.7.0-alpha.e1c0bdcf"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.e1c0bdcf","dist":{"shasum":"fd87277379b17d17c3d7089f11de4875140eb067","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.e1c0bdcf.tgz","fileCount":14,"unpackedSize":45871,"integrity":"sha512-URG32LkhbQmxJfNlCPk0adtVlamDVBqv71LPE5+G2f/L+i2j7f3/2AGHn/QqDxPWh2xiZVPS5vdpMV2itbKoZA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCBAzoz8a6lfDbK/EU1xzvM+1lKm41fuQfQb90TeihrWwIhAMv41yxkZFS//Nklf67bDjAc/RA0CXrdB+YYDtN1WrZr"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.e1c0bdcf_1532454542641_0.9664385096480035"},"_hasShrinkwrap":false},"1.5.0-alpha.3f3ee76e":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.3f3ee76e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.3f3ee76e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3f3ee76e","@crave/farmblocks-hoc-input":"^3.3.0-alpha.3f3ee76e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3f3ee76e","@crave/farmblocks-theme":"^1.7.0-alpha.3f3ee76e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.3f3ee76e","dist":{"shasum":"9a0a1a6b9a6bb317a831277159eb7fe45ec4d545","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.3f3ee76e.tgz","fileCount":14,"unpackedSize":44132,"integrity":"sha512-VyokazbMklNl9fYaTK+kx9YvLYAeJZElkZleE6ozWfpqch43F19Ew8qbh2t0a7z6ifeRUmYXtYVrHS0Fwu9Paw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAzQY+feGrVD0LdT7SZGBKhIAFQVb4TmnEV+1vRr/656AiEAqd4Ke0HXQp5OB6jM27PJd9gf4HWmE6y0ucPbqmbIKHs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.3f3ee76e_1532538701090_0.3824857295730322"},"_hasShrinkwrap":false},"2.0.0":{"name":"@crave/farmblocks-input-text","version":"2.0.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.5","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^3.2.3","@crave/farmblocks-hoc-validation-messages":"^0.2.6","@crave/farmblocks-theme":"^1.6.0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.0.0","dist":{"shasum":"dba4411526379f14193dbd5ca2fe60578c642538","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.0.0.tgz","fileCount":14,"unpackedSize":45736,"integrity":"sha512-GVB/q5Dx0H6dP5DRHaxyGYHleMks3k230UBp4K9DcsDRHe/beuLYqllz/CglulIlEzICQx+hT+3VSUBCO59rkw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLGbbCIaju47QqplkrYKrFlPFCMtQkKIrvu1f8BF31rwIgcTpMpx/BDk2hsDs46u/madmF1Xafrqfhf3g95st0UTM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.0.0_1532541777459_0.2682960999482047"},"_hasShrinkwrap":false},"1.5.0-alpha.d630b7b8":{"name":"@crave/farmblocks-input-text","version":"1.5.0-alpha.d630b7b8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.d630b7b8","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d630b7b8","@crave/farmblocks-hoc-input":"^3.3.0-alpha.d630b7b8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d630b7b8","@crave/farmblocks-theme":"^1.7.0-alpha.d630b7b8"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property           | type             | description                                                                                                                                                                                                                                                           | default |\n| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label              | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc       | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText        | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected          | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onReplace          | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| onCancel           | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText   | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@1.5.0-alpha.d630b7b8","dist":{"shasum":"864415887767593e3ef161aa31c21faf91870398","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-1.5.0-alpha.d630b7b8.tgz","fileCount":14,"unpackedSize":44132,"integrity":"sha512-WINC5L9uWAYfP7cDpisHMX+ZwQLdbobnJ44uJFsDoJM3aEmepxqKIWsOAd2WPUnI+GOkJwR8Epj+cPn5i/JMDQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCwV2ui/U6U83sBbWGR+Y7FO6sT0cVk6er4OZ1L+min1gIhAIAaXq7zHiZchuEDh5zvaFs+kA2NPkNIkTmACIFlG6OB"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_1.5.0-alpha.d630b7b8_1532543628373_0.0449313184171376"},"_hasShrinkwrap":false},"2.1.0-alpha.ed74dcbe":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.ed74dcbe","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.ed74dcbe","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ed74dcbe","@crave/farmblocks-hoc-input":"^3.3.0-alpha.ed74dcbe","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ed74dcbe","@crave/farmblocks-theme":"^1.7.0-alpha.ed74dcbe"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.ed74dcbe","dist":{"shasum":"abfb33a53e2a7565ac259e534a755e6c82a52541","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.ed74dcbe.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-36Sq2Pxueb5kiQlsq/NBzJuhOw2LDd/0tKLLL2uIHq5z466C9zdYrABkpteWkuCHvTqgi9KPOa3YCucexfiUYw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBEqWewUCfYVaqahbbrtXcciNr0VvH+dXbsNsh7ghFFDAiEA5HFvoTg9kwCxaDRYnTMCJUDQ9hyI42MsiJWkk87eyvQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.ed74dcbe_1532614357655_0.6978201859331059"},"_hasShrinkwrap":false},"2.1.0-alpha.2004c2dc":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.2004c2dc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.2004c2dc","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2004c2dc","@crave/farmblocks-hoc-input":"^3.3.0-alpha.2004c2dc","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.2004c2dc","@crave/farmblocks-theme":"^1.7.0-alpha.2004c2dc"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.2004c2dc","dist":{"shasum":"723cc9f0e9f4819abe7f2b24a6542cac3bb440ab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.2004c2dc.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-zx8CqyWsng9eO1BJ1P+h0/WlykyuXKFHh8hNl/WZKpLF/IzjYUZ0kvj2h7lu6eA6+jSA22uZGaoTlqRf18Z1kA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFaJpe3r2eue+KaQDqoabSOPPIQZF0lX//hgGFVHDB+GAiB5Onhg5Iqq65kB1+dbAHxlj0QtAn+kvGhykOY/ySRuWA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.2004c2dc_1532703767620_0.09122148388697737"},"_hasShrinkwrap":false},"2.1.0-alpha.6fd496d9":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.6fd496d9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.6fd496d9","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6fd496d9","@crave/farmblocks-hoc-input":"^3.3.0-alpha.6fd496d9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6fd496d9","@crave/farmblocks-theme":"^1.7.0-alpha.6fd496d9"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.6fd496d9","dist":{"shasum":"d1286758167d401d70557af41b833addbe6f9fcb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.6fd496d9.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-Arj/FWH6nHlzhzvGorHujYp2XBV9hUcnVCBZyDDS8yEI8s/CPeGK5lXoGMeBI5xReYA1keHRrZiTlasBaNV0ww==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/wGIbhbEIeSFl1uWcTV5pNBv5KVZFIx4FaZpuVuPbZAIhAO61qTYAX38auGwQX9x8NeFv3MqCkS2aOBh1lxtaYKru"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.6fd496d9_1532709970780_0.917109827205022"},"_hasShrinkwrap":false},"2.1.0-alpha.486490f7":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.486490f7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.486490f7","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.486490f7","@crave/farmblocks-hoc-input":"^3.3.0-alpha.486490f7","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.486490f7","@crave/farmblocks-theme":"^1.7.0-alpha.486490f7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.486490f7","dist":{"shasum":"f1bff1a9808faf51ed0aae69f6fae982ffe13631","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.486490f7.tgz","fileCount":12,"unpackedSize":46593,"integrity":"sha512-xBgA8k65AqVNgr6+TdgkmYulIXJ5ifxojwqDX9vPHHCnoEHHNMuHWgpIJRQXcE/wha/3B2Q+p0raFYu3m0Aixw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHyoyi4FcfXuPfT+PyOa71B16jwz/6j5GMSfETR/BrjSAiAogCiRZYU7K529aIx6YF02x6Ff9hEmXo8u7+vYqc55nQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.486490f7_1532712567733_0.9754845258718887"},"_hasShrinkwrap":false},"2.1.0-alpha.45ef571e":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.45ef571e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.45ef571e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.45ef571e","@crave/farmblocks-hoc-input":"^3.3.0-alpha.45ef571e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.45ef571e","@crave/farmblocks-theme":"^1.7.0-alpha.45ef571e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.45ef571e","dist":{"shasum":"85d3508af8d3f75a4c8254bced459445dfdd09ec","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.45ef571e.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-WkAUM+/nRHSaa8UxVfGjZB1DR2t+w44yZGLWA3BupqNlR9KiCqqYKSUjtpqoebg+vlZfJbnMuMPENvX+3eAI1Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHzQFy9ExoCpRFxPkCWC5RN9BCpy8EEUUYLIXnlGZyMwIhAMgqoJO3tzv7lsIArL8uzr6fDuh4OjcCo8dwKW3mKOVF"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.45ef571e_1532717346039_0.7905837484207523"},"_hasShrinkwrap":false},"2.1.0-alpha.b8a9f699":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.b8a9f699","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.b8a9f699","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b8a9f699","@crave/farmblocks-hoc-input":"^3.3.0-alpha.b8a9f699","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b8a9f699","@crave/farmblocks-theme":"^1.7.0-alpha.b8a9f699"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.b8a9f699","dist":{"shasum":"0ea37eb2b396d84b40f4e2bad579b5b76b294658","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.b8a9f699.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-hJtOgqFrttmGt6X0NGIE+Ne+UFyqh+tu77ejqtlYsDZXcVmYTPBXRjr4FXBBj8jxVmXx/8w9Ocf8EwG57niJiQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCo6huXCK3zFXWrkZ2vy1ZnVXt2Okiuvy4wDcpSZh4xhgIhAJe6FQGFmpfORejXfCqNvwiRxCJ6Jmj0WI1vnaSvwzBB"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.b8a9f699_1532719966943_0.7608638706653943"},"_hasShrinkwrap":false},"2.1.0-alpha.dfb1be0a":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.dfb1be0a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.dfb1be0a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dfb1be0a","@crave/farmblocks-hoc-input":"^3.3.0-alpha.dfb1be0a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.dfb1be0a","@crave/farmblocks-theme":"^1.7.0-alpha.dfb1be0a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.dfb1be0a","dist":{"shasum":"d80b48b1b535a8e4f92eb5cdd410277999e8b8f0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.dfb1be0a.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-J5Zgy0k6vpf0qjPnj4JiGm+GxmwVmeRsJNs15XYSMEStrL6SFEAysDRpJwrt0usH+L9GNoPMxMCkI9Oyf7u6ew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEn8wjPAy7t9/OwRkQPG/fqZHxMiEhRXiLv9v9/LBBiwAiA2ebcuVHkXpR4T8dJ8IlW0ZyBeY5R4LOai0451zgwWKA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.dfb1be0a_1532953635855_0.39958231978127046"},"_hasShrinkwrap":false},"2.1.0-alpha.eb72d5fa":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.eb72d5fa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.eb72d5fa","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.eb72d5fa","@crave/farmblocks-hoc-input":"^3.3.0-alpha.eb72d5fa","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.eb72d5fa","@crave/farmblocks-theme":"^1.7.0-alpha.eb72d5fa"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.eb72d5fa","dist":{"shasum":"b5fa293ba616505353bee53850fd7eba906def8a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.eb72d5fa.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-ueAY/79dqc1yHbAKZSoa33FQeucBMFS6INAQX555xr1nCvhABJ/1VaKekbM/Yz0RPhVOTbgbrXeYsokX76u0tA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGID/24wUqKg+p1cKn7l43a6TckX+TjL9qp9uN73xRy5AiBgK/ODaLQK+v9gxV7Bckd+8UtyAkSIhioX8CBAZYJsrw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.eb72d5fa_1532963901780_0.04929822393916328"},"_hasShrinkwrap":false},"2.1.0-alpha.f5442866":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.f5442866","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.f5442866","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f5442866","@crave/farmblocks-hoc-input":"^3.3.0-alpha.f5442866","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.f5442866","@crave/farmblocks-theme":"^1.7.0-alpha.f5442866"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.f5442866","dist":{"shasum":"55d9e8e8acf9ed76f24835058965f4913b6a8529","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.f5442866.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-dePRdsOGrvMJrxkBxrt+ZzrIbnPjJ5ig9uKG/FmzhxBuk4UAvTTbgNYG0m2Mz3PqqH1sJ5Da4z+tX+zvIvy8DQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICJMqmWfO5jPqCjlRwkhk/sU0DzlaL7cUR6nbt9H6pVAAiAF6aL/lAcbPKpUDrVU7wCHPE+uiRa5zXhUtysGsBgD7w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.f5442866_1532972124365_0.582677505492408"},"_hasShrinkwrap":false},"2.1.0-alpha.cdc02cd0":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.cdc02cd0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.cdc02cd0","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cdc02cd0","@crave/farmblocks-hoc-input":"^3.3.0-alpha.cdc02cd0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.cdc02cd0","@crave/farmblocks-theme":"^1.7.0-alpha.cdc02cd0"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.cdc02cd0","dist":{"shasum":"215b0dd094aaa619ac798613adb64b422fc1aa65","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.cdc02cd0.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-6ZcT50fhllmYwzvuL1nSmMJyYR0lqldrtooBPRHNSHl5X+LijQ9pGPH8iux9A6NJEnOcX8RuWmLYZCXSCHG6bw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQBL17HcTl0mbFH43sPDWl9RtCK9ZhvGah+wdTvJopSwIgQUz/AxoT4Zj1NG8v1hDrYiQKsKG6WQqrqnOVR28NlKo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.cdc02cd0_1532972579709_0.5672540029965529"},"_hasShrinkwrap":false},"2.1.0-alpha.5d75fe6e":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.5d75fe6e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.5d75fe6e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5d75fe6e","@crave/farmblocks-hoc-input":"^3.3.0-alpha.5d75fe6e","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.5d75fe6e","@crave/farmblocks-theme":"^1.7.0-alpha.5d75fe6e"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.5d75fe6e","dist":{"shasum":"5e9ec1697c491d45a0687b1b296148d98bf18049","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.5d75fe6e.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-yFwVkkkP0r62yjaq2n01amLD+rQ1GZqiCdLuBbygWSK8UDUDuqpocO66wWaFgXMIkPrOQM85/2TcDGin+bl8ZA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF2SGKOfwjAV2feUyu21u0s5ibWK5dOjoSqxzGC6u3/jAiBsr8AbZnj0QUjODqn+1PwhhjMDBThWtWwWcuT8aWBKbg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.5d75fe6e_1532973221216_0.763179651931847"},"_hasShrinkwrap":false},"2.1.0-alpha.d136295c":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.d136295c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.d136295c","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d136295c","@crave/farmblocks-hoc-input":"^3.3.0-alpha.d136295c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.d136295c","@crave/farmblocks-theme":"^1.7.0-alpha.d136295c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.d136295c","dist":{"shasum":"911302542a87a515c5ceac4d552b0383544c00ad","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.d136295c.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-FsORTnECiOtWQKp8O3ES0Vdc6/l6X0imxRDfaIWH5Rf2veRfeMNyiQPo9LonYyA/uI6YG7NSC575JrLtQP7dng==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB3ZOSgHlyYA9X74VW/TRF5sp56XdEJ9JnOvpMz+ihnPAiAttIFQ2pLIOil1Vatmj3kefGrrzW8sDLAiWQ5xtO8Exg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.d136295c_1532973760218_0.465984124311537"},"_hasShrinkwrap":false},"2.1.0-alpha.de66eae0":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.de66eae0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.de66eae0","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.de66eae0","@crave/farmblocks-hoc-input":"^3.3.0-alpha.de66eae0","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.de66eae0","@crave/farmblocks-theme":"^1.7.0-alpha.de66eae0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.de66eae0","dist":{"shasum":"687b5129c3b9295d584fd5f53ced57c476a12c60","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.de66eae0.tgz","fileCount":12,"unpackedSize":46593,"integrity":"sha512-4wy4NZyOfyE1zzXwP1vTzY2oaSvrUCTFoVp3NTssKgNSrNz99FKxtB8aMT8YbQ+LFU/tlKrvssxE5+f0jP3WvQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFLPsISnqybSJEwYkOwU4M0vuVwcInNigMDxHAGqJkmuAiARyb7Mj1FX5mLNMyL7/vk1NyXNUiZYFIU/UYe6G5kWDA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.de66eae0_1532974379178_0.2862526669083254"},"_hasShrinkwrap":false},"2.1.0-alpha.c01d2a01":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.c01d2a01","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.c01d2a01","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c01d2a01","@crave/farmblocks-hoc-input":"^3.3.0-alpha.c01d2a01","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c01d2a01","@crave/farmblocks-theme":"^1.7.0-alpha.c01d2a01"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.c01d2a01","dist":{"shasum":"4572dac50167e6ac817a9abfaaa48386e662a84f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.c01d2a01.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-b36yKzGwtSU/sOwu0CuR5cTcme0/LUY6zy1GlGPDhnHazo97eIkU7IxogLqs+a9pVLsIEGR3Mk1W/GbBWhbO2A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFi946bzR2Mox9TvXryUQ+5/Z5/RWva0wnQ9QJs5frnVAiEA50m7GsfkxqeJWntlRaHytbyRMhF01C2u/pEEyFs4ygM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.c01d2a01_1532974600633_0.4182567949775631"},"_hasShrinkwrap":false},"2.1.0-alpha.df7efd32":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.df7efd32","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.df7efd32","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.df7efd32","@crave/farmblocks-hoc-input":"^3.3.0-alpha.df7efd32","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.df7efd32","@crave/farmblocks-theme":"^1.7.0-alpha.df7efd32","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.df7efd32","dist":{"shasum":"ae362195dc422f8101d15379a5d38aa9d8208f6f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.df7efd32.tgz","fileCount":12,"unpackedSize":46622,"integrity":"sha512-mSOMtRp7keWKhpK1G3PMmPwGgCKarF2jGb9EFKhKsz97qts6GReyZ1zJ81AWrEr+Hr+/NThdYoVdjECXr9XcAg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCySCoeWEDiQljs0B1tyCykLyO6Umu2oniTIkxUPiNmYwIgaOXScwg+YQEYxzPx0lQ1N9oBITsfP3D5G5Ez2YRc5bM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.df7efd32_1532978516081_0.5788067912857442"},"_hasShrinkwrap":false},"2.1.0-alpha.2adb9169":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.2adb9169","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.2adb9169","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2adb9169","@crave/farmblocks-hoc-input":"^3.3.0-alpha.2adb9169","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.2adb9169","@crave/farmblocks-theme":"^1.7.0-alpha.2adb9169"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.2adb9169","dist":{"shasum":"fd627c9e0de6465a20f0e8a4cb8a87113b8f0eae","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.2adb9169.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-10COJF19DXKY8nFRCbyyFlz0o8gJ/9l90Xso82B+lE/98Qe6pku/MF+is2XlBlSXAck/NjZhlQuAjzUBr2KAEQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKs4r4+JMWnyeYDLcb91W9fUBnu0ddxKWaXT9v/qBvvQIhANAOoffWBFCUNHsspcm0ae8Yy7Ss+L76SxrlXyuQiwoe"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.2adb9169_1532981677616_0.39676530933106147"},"_hasShrinkwrap":false},"2.1.0-alpha.441ce3da":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.441ce3da","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.441ce3da","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.441ce3da","@crave/farmblocks-hoc-input":"^3.3.0-alpha.441ce3da","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.441ce3da","@crave/farmblocks-theme":"^1.7.0-alpha.441ce3da","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.441ce3da","dist":{"shasum":"c2d8bbee58481b4440957f56398ae697440e3c0a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.441ce3da.tgz","fileCount":12,"unpackedSize":46593,"integrity":"sha512-zbz/Dr6jiSOwokfRxvi6QpYNhA+w7vtoAB0f0bjz2u8CchRB8LB3fxdIaWX0RE/AvcbaOvDoXuaIXoNqowBtxA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDxVUO67iHTkr64tcR4oopE+DQHZP6f+6P0ohSd97ds5QIhAK59jVJDxTvuad6ORXQGvg+zcrDbpPeapV0SJZOSzkLa"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.441ce3da_1533035118657_0.8157850122630976"},"_hasShrinkwrap":false},"2.1.0-alpha.fe6f265a":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.fe6f265a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.fe6f265a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fe6f265a","@crave/farmblocks-hoc-input":"^3.3.0-alpha.fe6f265a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.fe6f265a","@crave/farmblocks-theme":"^1.7.0-alpha.fe6f265a"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.fe6f265a","dist":{"shasum":"2eb3a7a7b4e9854bebf97b2b6a56845395f8fbee","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.fe6f265a.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-6egzYqcfxSkF41hr+Go2XWTazFdMDypS+PKKg7Gc6490UDVYSTjaXViWMLyIFZaIWv3bBdwOqfbSBE8yxSv0KQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFtbVXk+0+wZGRJZjcY8Yzxr3VHjPQDZhtcltuaIxp6tAiEAvXXu4N2QigSZjrSxyjRzcX7wAG61z5Atz/1BfHWaxIQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.fe6f265a_1533040570646_0.1415530951466477"},"_hasShrinkwrap":false},"2.1.0-alpha.844b6433":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.844b6433","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.844b6433","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.844b6433","@crave/farmblocks-hoc-input":"^3.3.0-alpha.844b6433","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.844b6433","@crave/farmblocks-theme":"^1.7.0-alpha.844b6433"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.844b6433","dist":{"shasum":"e55200414ec0382f69bcc632054d467823675af5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.844b6433.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-6d8MITEv12RZ/TpeQtFwYzjQLc4WP/ft8iGrPvEOjjPAocEiPINAn7L9YCdGaP7TRAW7IKccQlVhsIWm3sy6BA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFSe6KeBza5jyIh4GduVU2OY1BYTKKZQAWlDKUtg7p9fAiEAmB9AfVMh9IvwgO27W8cvFA+6GqWLj4qRl7u9zaECM4U="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.844b6433_1533048498966_0.4383085345895035"},"_hasShrinkwrap":false},"2.1.0-alpha.4c78655c":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.4c78655c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.4c78655c","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4c78655c","@crave/farmblocks-hoc-input":"^3.3.0-alpha.4c78655c","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4c78655c","@crave/farmblocks-theme":"^1.7.0-alpha.4c78655c"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.4c78655c","dist":{"shasum":"f669071347a244d1c5ff065bf767e7cd7a9f7c98","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.4c78655c.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-jyDdpo0SMiFckDDPa0WEG5cyR1wHQawADgRPfn25N/c9jZ9fNmC8XZXOoVtUObCirRTV3QukMSSbc3VJApDong==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqXGYn7M3Y7Ftz+fsWoXckdS3tCgQf7VaKhgQbBNBj+AIhAPttsC7aoAZ23ab9z2NtX0UsGzdZLsp7L7kYayHGQj1L"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.4c78655c_1533049319264_0.9246141873258764"},"_hasShrinkwrap":false},"2.1.0":{"name":"@crave/farmblocks-input-text","version":"2.1.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.5","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^3.2.3","@crave/farmblocks-hoc-validation-messages":"^0.2.6","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0","dist":{"shasum":"c7e2f7f5d775e765e66a6e37cc6a12f3892ba15c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0.tgz","fileCount":12,"unpackedSize":46458,"integrity":"sha512-t4fVrXTpQnxwlixM4stLc/q9Ob6gScfLnvyC5EIIYvzzqplc+IM119gvKXwvWioveogrqXAR06JOjxjh+S2WEQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB0EgTMmV0v6gTzrf2oOT6nKVlOLrjAYmHED7XFGFpo4AiEAsg13Cbgp31z8QpJF3g/4HslpOCWTjjeEPeGfTMyJn/g="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0_1533050965041_0.9997435141294897"},"_hasShrinkwrap":false},"2.1.0-alpha.a59b42fe":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.a59b42fe","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.a59b42fe","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a59b42fe","@crave/farmblocks-hoc-input":"^3.3.0-alpha.a59b42fe","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a59b42fe","@crave/farmblocks-theme":"^1.7.0-alpha.a59b42fe"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.a59b42fe","dist":{"shasum":"f67e4e0c0a4b3830658a0f1cbac3605ddee6208b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.a59b42fe.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-CmFG08y4hUJ8f9Aef/yuOUkQLhX+Ql4P6Zfm1p1lFaOsf7Lx5BGuWKlXHw6FH+DZajV6MURl6DlHrSB0dCwIlA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF9LyoH2CQJdOh7AR5jL89/oJOSwfbmCjyw/mdVbevbYAiEAqzxzWQMZ3iKFQIA2MafsagNo05E0pEaIyPSDmg+0crE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.a59b42fe_1533058131759_0.15812778077243084"},"_hasShrinkwrap":false},"2.1.0-alpha.636662c7":{"name":"@crave/farmblocks-input-text","version":"2.1.0-alpha.636662c7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.636662c7","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.636662c7","@crave/farmblocks-hoc-input":"^3.3.0-alpha.636662c7","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.636662c7","@crave/farmblocks-theme":"^1.7.0-alpha.636662c7"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.0-alpha.636662c7","dist":{"shasum":"10499daa4274b935d6408493e5fde1033bcd7858","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.0-alpha.636662c7.tgz","fileCount":14,"unpackedSize":46110,"integrity":"sha512-kTBNeBIA8P3i3HfjdmUOR/2Ivq/smli16RptpVlV1GjcwRnxLCHUFIH8PwIYu8wDoAJ4PqNwMh4X6wtPFX3mXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0Eij2tYj8FT4/SzHrXH1289GggZIPSelmDcTGi4oengIhAJ2RgbVuNFsKruh8tOjVz+oc5wnSo7omTtyucgqSUamH"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.0-alpha.636662c7_1533063033660_0.058641488158885036"},"_hasShrinkwrap":false},"2.2.0-alpha.ac123961":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.ac123961","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.ac123961","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ac123961","@crave/farmblocks-hoc-input":"^3.3.0-alpha.ac123961","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ac123961","@crave/farmblocks-theme":"^1.7.0-alpha.ac123961","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.ac123961","dist":{"shasum":"ef6cb9144eb6e167e1f5d4fa9f4bd0c2d38581c8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.ac123961.tgz","fileCount":12,"unpackedSize":46832,"integrity":"sha512-bALYU42ryeSbLIcWym9ykEIH4IDCNPnQDYelEHzjp+YmaI2rGJ1RDNaij4DNoQc5Cnz1hkz4ihAHRt7Ed2T8EA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEVt/UiA4cjyknOxGFBHfv+z/CGR7QlsuBXT3taRbXT/AiA0LODr2Oo7BREssWy/AtzwuksRjOezMU66fRSqZRx4rg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.ac123961_1533134212284_0.061934077695660505"},"_hasShrinkwrap":false},"2.1.1":{"name":"@crave/farmblocks-input-text","version":"2.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.5","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^3.3.0","@crave/farmblocks-hoc-validation-messages":"^0.2.7","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.1","dist":{"shasum":"edcabbaa7102a500a2a470fab65bc2b5bf7dc764","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.1.tgz","fileCount":12,"unpackedSize":46698,"integrity":"sha512-ySPElnbSaH0wE/WonWRHOY+9bY1pBIO5IMEeZJ4a5KbylkkfVByv+FaXA9w0CY/SmeyIM6W9L5rjn+O0qXS65A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBdh0oGc3AdDo7HgnUEI0rwWbVx3otNPNpxTWEmE8mmsAiEAiGyN5w//a1VF6N7sbg4v23/KT3U/k17XXKWha39EAEY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.1_1533134876254_0.06336797921368076"},"_hasShrinkwrap":false},"2.2.0-alpha.4943f7ad":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.4943f7ad","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.4943f7ad","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4943f7ad","@crave/farmblocks-hoc-input":"^3.3.0-alpha.4943f7ad","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4943f7ad","@crave/farmblocks-theme":"^1.7.0-alpha.4943f7ad","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.4943f7ad","dist":{"shasum":"b9a2ea3fa10ca7e9f7462d7478ee5b2a2426d618","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.4943f7ad.tgz","fileCount":12,"unpackedSize":46832,"integrity":"sha512-sg6x7uQLol5dSukyJfB9ePyvQd/ZHXJA5F3KSPuTxgBzJlYXPd2LWwYm/7oy37MiZoRro6MUQPqWVZbArDGrsA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRdnTOuxd4986ebU9aLMDTYQobWcuATTfVyVHzlRMzzwIhAMCPKPObtGL4MUpK9P2J0TdEE906v+z1UP+Ndo/u8IpD"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.4943f7ad_1533141532594_0.45878025024225133"},"_hasShrinkwrap":false},"2.2.0-alpha.772ba812":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.772ba812","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.772ba812","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.772ba812","@crave/farmblocks-hoc-input":"^3.4.0-alpha.772ba812","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.772ba812","@crave/farmblocks-theme":"^1.7.0-alpha.772ba812","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.772ba812","dist":{"shasum":"c3536d04633a835a2ef5ed23395fe85f3539786a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.772ba812.tgz","fileCount":12,"unpackedSize":47072,"integrity":"sha512-wbatqIe3I+9d8B76yyf6aPTC12s3hM7dngUhXtghsUaGXvlh3Z5Hg6rPdSR91plft/DB5o/lU91HzKgkGskHbA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSEODtOu9DoZko+FAA1X45ycktWFJrfQcoOF5edaXbjgIgfOguB2PacxLc/7KYy3y/kWa2Vxy2+HUtwe8Q/+5ABIQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.772ba812_1533143275838_0.800008139816291"},"_hasShrinkwrap":false},"2.1.2":{"name":"@crave/farmblocks-input-text","version":"2.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.6","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^3.3.0","@crave/farmblocks-hoc-validation-messages":"^0.2.7","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.2","dist":{"shasum":"01d1709398c275ed48276659593b8c736b7171f7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.2.tgz","fileCount":12,"unpackedSize":46938,"integrity":"sha512-QnWc0Pr6xL1GQujfx+Jwyn/e14ZHIl4KRGyyvn9VVahHKMkq2ezmp83G5HQ+JwLNBne2SNzE8C3X8b8dNjb4kg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDd0xeeG9EosuTXU7dzo7M5bH02tByXaxVCxldj7/sKXAIgYvCYW6cSY5x1mcil0/93JPj2kEdZbUyZzECexZHl5fI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.2_1533144520334_0.30065658833377307"},"_hasShrinkwrap":false},"2.2.0-alpha.55bb1643":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.55bb1643","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.55bb1643","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.55bb1643","@crave/farmblocks-hoc-input":"^3.4.0-alpha.55bb1643","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.55bb1643","@crave/farmblocks-theme":"^1.7.0-alpha.55bb1643","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.55bb1643","dist":{"shasum":"e3870bc90830c2e8700f36d58788a4017e2f0610","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.55bb1643.tgz","fileCount":12,"unpackedSize":47312,"integrity":"sha512-s03RH4jzgWHXF+KqRdWIR09R1vl46HUAfgwAkTp56EEAswbvRK3U1T33lsuHvt1s3XybrHbdRNaoWEcWtKsswg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJMjkeaDrfdE0b2i15XyDIoEJZhNjSFhOivnEfQ8gviAIhAMaxx0QZB3lnKfnKfzR1JNrnSpSRYXpIOIZmEgOUkguB"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.55bb1643_1533153846449_0.28973930763956535"},"_hasShrinkwrap":false},"2.2.0-alpha.2e464d84":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.2e464d84","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.2e464d84","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2e464d84","@crave/farmblocks-hoc-input":"^3.4.0-alpha.2e464d84","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.2e464d84","@crave/farmblocks-theme":"^1.7.0-alpha.2e464d84","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.2e464d84","dist":{"shasum":"eba09b68eded66ff0e27aa48f8f15edddbda440b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.2e464d84.tgz","fileCount":12,"unpackedSize":47312,"integrity":"sha512-lP1dIfQoBlfh1yAfmQ9+JKP77WID4v+znV0CNrdPNSklHza84ihXfbgJ3lqVHzA+WsqLvtgxCncinx96C/JdyA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD7SFlpugGwD/3XQRpNHMup9br3B8U578Lj6azKhRgQPgIhAKCNKSErC3XHaFJnUDbU1z4ZScDYYG4+oHuhs0hhujpm"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.2e464d84_1533220994440_0.7664632545851657"},"_hasShrinkwrap":false},"2.2.0-alpha.3092ab63":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.3092ab63","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.3092ab63","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3092ab63","@crave/farmblocks-hoc-input":"^3.4.0-alpha.3092ab63","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3092ab63","@crave/farmblocks-theme":"^1.7.0-alpha.3092ab63","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.3092ab63","dist":{"shasum":"c7cc91db389ce70986369a28e9f8e3615825f68f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.3092ab63.tgz","fileCount":12,"unpackedSize":47312,"integrity":"sha512-L/CVeQI4AeDk8SgHjDsIyqbnag7+VtpbcJyEsxweqRx81OwMFEDKA9Hdo3p/1koY5ke3K86O+mTsvM9QsE6Q0g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA+tq6zUOmAvl+mHY7HM1dtV664a7R2nwUh2CSbUbCjtAiEA5Dgbe/otd3nziybstdp4GYxszT8xsCKHAsEMn5ONHF8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.3092ab63_1533230520681_0.16959483338517467"},"_hasShrinkwrap":false},"2.2.0-alpha.59c7c498":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.59c7c498","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.59c7c498","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.59c7c498","@crave/farmblocks-hoc-input":"^3.4.0-alpha.59c7c498","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.59c7c498","@crave/farmblocks-theme":"^1.7.0-alpha.59c7c498","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.59c7c498","dist":{"shasum":"302967d0828805ef20422d9ce198a54869107e31","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.59c7c498.tgz","fileCount":12,"unpackedSize":47312,"integrity":"sha512-K9+JIyRGl/ptk0RHTRvSJ0Wv/V3CqldiH/Ne7bcoIfXfYqSdOvs7EHfPQEVQwjopIrC0RvjJ3ix1bhgl3UrTYA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDIBQWZ4fm7LpUiOhxZ7GxHDkEiosoNbIsKz9Fsp0fSxAIhANHKd5x3dJ7fMF0qAUr2Rphj7HQIWCG8OFpWPcONqM42"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.59c7c498_1533236351548_0.24850771834175145"},"_hasShrinkwrap":false},"2.2.0-alpha.503f836d":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.503f836d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.503f836d","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.503f836d","@crave/farmblocks-hoc-input":"^3.4.0-alpha.503f836d","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.503f836d","@crave/farmblocks-theme":"^1.7.0-alpha.503f836d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.503f836d","dist":{"shasum":"5678f33e0bad174fd04e3676510fbb27c34a5b12","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.503f836d.tgz","fileCount":12,"unpackedSize":47312,"integrity":"sha512-V3LsCML/3wDYkQduVNAQqpAqLGPri/KxCOduvnEDtjxwKZ5/hmU+JEqPedKsWNSNqo1YM6ls/HePMbYOgHI1bQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCtrH0ACnf4fsj4IdOovi/EK+Ps5FiD1+87vT36ssfmCwIgNR3Jc/58m92D2PgbTyn/l+QKX0zEDDIss7STEjCLhPI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.503f836d_1533239449195_0.2797050085676702"},"_hasShrinkwrap":false},"2.2.0-alpha.c8332a96":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.c8332a96","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.c8332a96","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c8332a96","@crave/farmblocks-hoc-input":"^3.4.0-alpha.c8332a96","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c8332a96","@crave/farmblocks-theme":"^1.7.0-alpha.c8332a96","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.c8332a96","dist":{"shasum":"b023c67f1196dde3ed44f80393a3aa2e331c790d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.c8332a96.tgz","fileCount":12,"unpackedSize":47312,"integrity":"sha512-4HPfXeU388TU7rYP0cbJeDE4l++32aOp4wX9gm4iXo8ErPOMYCkvyY+UE8QdxCxmmbpHQpL7tPp5xQFF8j2GOQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQChqWrRrk3z8L5PFF7yWwl9Ai+ZQDNVSv6YjVxyZVT6TwIgOGBRO2dEYesaZ8RplzBKpgKOrVfP9dOuIUxb4ZZkimw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.c8332a96_1533308265711_0.8570274729053975"},"_hasShrinkwrap":false},"2.2.0-alpha.9514bd68":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.9514bd68","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.9514bd68","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9514bd68","@crave/farmblocks-hoc-input":"^3.4.0-alpha.9514bd68","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.9514bd68","@crave/farmblocks-theme":"^1.7.0-alpha.9514bd68","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.9514bd68","dist":{"shasum":"0eb6a1477166dca9d045cca1e0c74d1ee817e1b9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.9514bd68.tgz","integrity":"sha512-ihdskkDQEAhFFKB/du+670CelG6lucqyqXi5BKze2jPfbDe4OaP/BIEIUVJxLNofsPX3X/LP80hLGZHB/a75sQ==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaFXeCRA9TVsSAnZWagAAr40P/jtxDdm62nQkDvoNuZvk\nUW09HQVjvnf/gJDQzfrl6pVHZcyt+JQI6lIDR8GJNYJWhd+9CVgvjid1nH4Z\nXp79WtAjG17eCr8SmYEsXqH2hozKbmUSCM8A+Y4z8io2JoqKhjemH0vPVeek\nZqdZEi1ucG+MEVlv3Ur8dsbZbF0wyE7LYiU1F92XgspWw+tqUq0QtMqUJzit\nK1sMYpJ3de7EneM0YDyTX35Y60S8lHNJr8P6i+HY++oRTk5JU3gI8hbjzdCs\nwyp1ZASl1viEwRFyCCIBwrszHJik5uiI0QsE88xIJdC63LZWcgjVerNgp/u8\n6zvqXNR8F8iKeizQr2dpqoHSB6eZhoKiYDsB9BNTSYLjaRn0EFSk6p+e6Lis\nEKZdPhhiHeycOl78Cu7HrQNpSqDqK9ZyC+aqfHi6bn41xH36G6FDI7TtENgi\nvNn9Ls9L1ALffdi6cCdbhgECHUVnqR1L0sGdzOLKt3lJ30K07X0viD0eLUPB\nhDTeqMR4GgBQ2CjbRDBR6FgLCaOGfMG0NBnwUH3Y1KxAb6DjSXWwhg6ZsgQb\nYpgMijQqdYAF8FcW0tAkiqGQG6cvZJlgirPJ1g3hIpTxIHm8zQ0vr6S2cJJT\nyxUcIyVIpwNAqNr4y/oqpsERkhmyXLDBvOXG0ze5doF8OoDv97KxN9hKLpgU\nOnKD\r\n=IyUY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDyXkyGhYzdxl/d/4eXAir9U4VOVDDnOOphbwnUFouZUAiBNuSyBGkhvUWe14nvqi5f/5OaY0nz/nDMnQUbtXur89A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.9514bd68_1533564382161_0.7557190547680908"},"_hasShrinkwrap":false},"2.2.0-alpha.b1889383":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.b1889383","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.b1889383","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b1889383","@crave/farmblocks-hoc-input":"^3.4.0-alpha.b1889383","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b1889383","@crave/farmblocks-theme":"^1.7.0-alpha.b1889383","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.b1889383","dist":{"shasum":"b656a4f68efcf768826ed7e79ccc230f1d480886","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.b1889383.tgz","integrity":"sha512-Ijfm4NoPagH2JDR34CmmqoteC2EeSyg6hnYfqKYOMdIGHwEZFInsjckmbJ6VLOz9PxRmj9Avo5h2JxhRXpwyxw==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaFy4CRA9TVsSAnZWagAAoIsP+QBqcrTzbS81olP26oek\n4SSBOT+aSlhz2bVNnxKIcpg+lbfKhasYyG3dKR04qm061g+lLjV+Cz7FBq9D\n+CoIr3YOBjQawO75bsO28oCC9RI3jJ2kQMgAiLDUaMJDn3OciQUGAIMhYJLs\nG717Cy4C05V+Xsd000DMtvjqnoAupGpUGgbFifbKJVlerPgsroLmODAI9RwA\nSwKRdNC1sgxpVXd1bbeyWPNCgqgpLvyIJD79+KMQY+13r3htls8BwdeqHwyo\nEwDR02yXvacx2n4a9QFzM/KHhTCWBVi6UEG9Gg5noJkuLoOmtnxEIAHgD3fJ\nI5KsGcbAsgQOBvWm7z6ALvNcDLV7xPzQ984MbxP8XYu38RwxewIr1pj9w9/t\naLOmI3HRSYTPLKkMyIGkI7Yvbi0Qxcp0TUkwlBtDA4LnQIgDK1HOTQZZn8bS\nH5TL8bdtZDmlMCRTYjARptTzdm/a+hOmb80AYnwBq8DzmSywuMFTMD2qyikf\nXzpjXg1M75JOppdVqs/MRM3CevvFnY0W070I2P0mQiNZVgkEV5Kye96aeVzg\n0vbg0OMQo3Ga/j/dOQ2X8JRibP3m9bEc7DXMIN8L2aR1sjZ7kgz27cmMovhd\nun2EUt6QToLu6vICUK2KDoHUm2q6AtJeN9Oc1lWKEaw7sE0F0UzT84SY7dDL\nbFr3\r\n=8OX6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDfhfeam9A4Z7XWFdJvggbSOPcJfaYUmzXoLX6pm1/mvAiB+5bxtk/F+PD+gBBxL+stI6C3kFfYzWBJLVb35qpdiZw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.b1889383_1533566136233_0.6562715007126911"},"_hasShrinkwrap":false},"2.2.0-alpha.687832ed":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.687832ed","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.687832ed","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.687832ed","@crave/farmblocks-hoc-input":"^3.4.0-alpha.687832ed","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.687832ed","@crave/farmblocks-theme":"^1.7.0-alpha.687832ed","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.687832ed","dist":{"shasum":"dadf485411177ef2d14a88b8cb3964892e85c8e0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.687832ed.tgz","integrity":"sha512-CeMp9Nqq92/nGmHtD2cmQ15UZ2Jb9KeiVE8jzV4NuYhVIjQwHjCucrYm6O9pUV/eP8DhleYkiN61gZIkGvSOWQ==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaF5sCRA9TVsSAnZWagAAjzoP/1oi7vrJoDWT68PPx0IU\nLxiU+St3HuJ3/Ol6gozF00pbEVXoOxwbxyufCBKjd0Bo3nNmOq2bQvKPPfu+\nBTGpakbOsyZdBzWy0HqWywrs8orQiVBNjelFT114qWUnAZhDZVs+WBoWzhCf\nrjMDuaDqR8cDuXpnPd1Kl0ZuC8koR0krxhLx1QUuHLN+o6YZ3Oi3KS4ajKJj\nxvZ725RvsYmTRqX+z5rJevy67V2sTgPoMDUcnz3cYFX9WFSMN3uSfU6gJhDh\nCJhwrFTd2jgvfkvCMxSvbf4Dt4lEnnfR2eqlgU7bUg8OuCbtWf2Pc6SesqNm\nMxRUwrVegc2vVW7qgKvRC5Bu1Qu6tMCgwV/gJLUaGiixbVZWcDiFirSTjQx+\nwoRAkO85kZhuVR+IhxGWcfU7oXe+V5uhmjz5KP4u1Led2dZW621wLZ54tBh/\nOnjQ/+W5INWW3Blpk1Ftix8lJFwCjWl2R4nh7lypvA8itSyuaYQWXiKsH0V7\nI3NSP5B5CWP1sS57NcXZV5ngHRZOzixQOEtplTHXMzJfcO9l5f4OhTMun5oV\nOQogDlN0jN1vlnypYy2bdLda7jZwKIsAaCgUTK3NbrtPXOGF6rePypWwT/EO\njJujOyw/MVh6+EGD1FlRtZjai0jAPBFMhVma+KnYn9mwHHKCwSnvT8SBoYAb\nWvdV\r\n=kgpd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDN+WoS/A8q+kq/53W2JmMLDP0q3TgU822S08EMY3aLdAIhAKwrSuGMBiehr0E93q/obBkLDLd7HRI/WMX6ZFhESDyT"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.687832ed_1533566561687_0.44988749141875983"},"_hasShrinkwrap":false},"2.2.0-alpha.745374bc":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.745374bc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.745374bc","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.745374bc","@crave/farmblocks-hoc-input":"^3.4.0-alpha.745374bc","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.745374bc","@crave/farmblocks-theme":"^1.7.0-alpha.745374bc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.745374bc","dist":{"shasum":"3569f3efde74c1a467c2179718c1b4270f9a7858","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.745374bc.tgz","integrity":"sha512-XhwkAYxf+HYsmMWiNH071xMaoU92whubP1JRaXKqRa72yJHpaUPKrjzsHn7lbUk9RAkB9UoPzHI5CdRTmMOX0A==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaGRaCRA9TVsSAnZWagAATSwQAIk+ztp8ZTM5zKmgPyEr\nztZ7P9DDp/+W1K8e27tYVB+hF7kae0nGwXILQMRRSkCgPVJcmFhJtVZ+wvdR\nXvECbdP0DWps6bpqOzWUvO0k/x13yPjCYcBR5bPEhU71S2X+LFO2LKQ3UGq9\n9ELOuJv7QJ+luLmKI2qDdPCVL70/cGZCG/kWbyI842/aGg4PrsT/pEkFbfD5\n+NQiW02WbwjX6p/I8WtwN7RAqzWSbXCJDypb+vDJwNMAglUsmh01G+NOpqQ1\nzy/jgPCXj67CaIkP48iuCzobHsSapH5AOhfmKOmq2mf43Z25iJglxGBPGBJV\nEmnntaEzdo3WsoKuQ/YWWxl3V6pbdOjs9LqvMH7/tLULgDh5DftzQXhMlyRN\nSUwuiCYP4aouv0hu8c7G5wefEoj0Mb+m2ZDFR4u63gHjzr/qWloJbjg+JKQv\nUIBS4RN+hRZwHFtEVSGpeSe/3a8iMLnJha/hPtCyePxplp6hhPjN4RTcXDSg\nwx0OAMOaF8jB5XMew4zTZcFcEkQH0KV4LoOdxunUiqAygHg7YUPCxwO1A/26\nYBwww1WjNA1Wzj/4suaCY7gXG9C3JiRDWEDHYtAgamE/mJeAWMG3U970lrBO\nX5ysZV3Z/1hI8wICl9qLlhVmpnlUtxybfUrXGsZqbsORC0eIn6XaXADw4Az9\nN4F5\r\n=+qDt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmVcJ46beDwsXMCtHF1ZOxU5to3sfn7ok5uHfF9eeyuAIgcBCx0mpXYUFfZYCGOn0MaMULqtrWbB1gvg7OL6a/W78="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.745374bc_1533568076549_0.5961033302529839"},"_hasShrinkwrap":false},"2.2.0-alpha.24cc888a":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.24cc888a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.24cc888a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.24cc888a","@crave/farmblocks-hoc-input":"^3.4.0-alpha.24cc888a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.24cc888a","@crave/farmblocks-theme":"^1.7.0-alpha.24cc888a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.24cc888a","dist":{"shasum":"06a418f301e2162821d33dfadef8c4a21064df84","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.24cc888a.tgz","integrity":"sha512-cbQcMN/POWwOR8rRnwKittPCxuqeyCV00MzHKAsY+XWUaB+y9rt0GnhOutBMOiC7gJryL4t1mYBjBNV/unz8Pg==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaGuTCRA9TVsSAnZWagAAATcP/iPAWOqcj5NeL+R2gGr0\nSGbstDdAhi9iElhaUPvvHv5Y1ACXTRmsXfazW4VeLLCDGxYpAzO1T7X9ib+D\nfBi6KdS3yIp7YIti0xFJKgsLmLcNKV6mChrY3RIuW4F7y3/F2oAbZljCQmUT\n7SWd58ozYnB58WXreZeBrge8lUecJxVInHL8OLiKaVPquhbHDjS65hTr5VtP\n9dbMTproUMxImUy1yG9OagzItlM+OPJuNyaS8r3zcmZ41VP9/Y8iq9i55IRU\nGHoi533kHzpREDjaw+fDyzHLG3nFaRlCs9/sA6Inx5q3w4y6ONtRIBUHDdox\n83lffYEwv3gj61xh/rVM2O7gjOVFXLP+11fwX/ev9cyznRr1tQY2MK5Z7T/D\nGpMnxJqRC1GalaNgzvB7xHDwa/RTmqNrCoM0SqqhullHkjazJHCP3VEetLcV\nMPmgW6K4Ej8Y0kdFeGE7CSz79TawgfAV1tBgfvu9lQe1p5Ir0vPEhKeC/Yxb\n0rgGZW8tV5yRUwboA7Yi6nZH5zP++etaJMyC5uK3z04/bahmUOU5+MOhhKye\nsEksjT+TXel4yTrOeeARYl40j0K7jv+yt7+7kLzEY42nVmmGoVgXZweXKTJp\n2Z0pcPffm62KSrXquU+ti2Dsd+x7jmvd5VJfH0UTIWQCuASSqgTPUDj1pyNa\n4vWl\r\n=T72f\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCNWRLrn2EmoMG6b57SHzDqqzneaJzFg8vdJ0IKP+ReQIhAPuKnPp6SpwA67+6MiQXbIEqmIBvfnBvpZHnuxrxrByE"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.24cc888a_1533569938012_0.7996317572489993"},"_hasShrinkwrap":false},"2.2.0-alpha.4c30fc1a":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.4c30fc1a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.4c30fc1a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4c30fc1a","@crave/farmblocks-hoc-input":"^3.4.0-alpha.4c30fc1a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.4c30fc1a","@crave/farmblocks-theme":"^1.7.0-alpha.4c30fc1a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.4c30fc1a","dist":{"shasum":"013e8999a80746fab9a4db0f22b8df18b3c34569","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.4c30fc1a.tgz","integrity":"sha512-8MaBntKUEFpeZ6bR6sA778R1X3O63leINJYxzzFb8uy0wQkuztZjAP6fhkc2A6YXSa0or5VFHns4/dDvzzm6dA==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaZoiCRA9TVsSAnZWagAA+FIP/1tQuQXYl5BkLUyx0zPi\n3j1IhZKITz6/Gmy/TlRbsssTCIVErPqWk8gfgIVordHuVQVansqktkCXHnbr\n+3QigAJLrTWpoF4AlZrDQzLYibv8ynZDoSF+qRUZoJi3G5veD/cWWXxfZobo\no7wZ3Oeapt15hMeKGxrJkFoGZY3Bl9VQN73QRid+Lvqi6AfyYFciA6z5cmC7\nTvKa7BoVK8eDfFo12OvZPqnfjZ30UNobjGRhgteTywcyu/iJ1dmFZULj65gf\n0rAS6B/xPEnO5xRPQLIQyuGsTYljHmjtnL6BtRygx3tMJawx2bd0iHLbT9sb\n0U8IQNTrJtTxXo7RAMVi74BIQnMNab50d8qLn58Ll7giLtoXpUwyf96cGaED\nfsrBNRQHxZajrbQR8x6DSC46XhTh40vWFXcCec7KuD8Bp01dddvVMPAGyIAj\nYE7RCskPyj7Kjbeb5aZ71QvXoAkEHyRn9BTGUzDJUJiyaDGwaJ92nOQeFIGw\nJ10OWod2DIg7HUW+GLFd3IDJMPPnxnFpoQdwlGcS1ZoeEt6YQhuMo1kkVyzw\np8hWsG0qOSyNWlG0V93pML0EY9mKv983LBN5nHpwCXdFIXSZ2BdO/SAWWigs\nV8JAKKd7HLXVCaElwrCWPteyje5NT2kxL9CR+1FmCDfAcx/9+LOZvj73F18r\n+RtO\r\n=B1k0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsvw/Uztjl2tBS4t91rC6dFCpHGA68z9fWH435+Y/vjgIhAKbLG5NZgDZzXJ3V+j0D+0EDZDTKu/m0YFLl2JDdcN8/"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.4c30fc1a_1533647347470_0.4733213554416347"},"_hasShrinkwrap":false},"2.2.0-alpha.962986be":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.962986be","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.962986be","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.962986be","@crave/farmblocks-hoc-input":"^3.4.0-alpha.962986be","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.962986be","@crave/farmblocks-theme":"^1.7.0-alpha.962986be","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.962986be","dist":{"shasum":"00d19c37cea56ebf8fae8b122a13a3d1c91ee5bb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.962986be.tgz","integrity":"sha512-kNB4vAUgS6e3/o4ReN6pG91KB/fSf9bNalLLVbQrJ+LuvUZTci1zt6+MxgRCn+DyLgxI4ssXwJV/X90GzP06UA==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaaK/CRA9TVsSAnZWagAA71wP/jXtjps4u9pnVumFHkGO\nzvN+rwrOgFidATa2e3u0r7kPzUFjNz64hanc+sp43xYdpl0MhPMzBzlPD4Ul\nKzP2AqeBBME76Hq1Jti1KZUyMB7VQ1G6JFMGzxeYRAlOT0Rc0EXWwilJG+5c\nfN1c6T48ZVdkXy73SoLv151+ip5+PTxDhvZoNqgbv4xdErkfF6Nyxj27qzoT\nJSZ4LTL71Ax8Obf0Hv+bisfGkmo2X7E906dox4LpdMMDToiIaNa3yH73IEsR\nanApBjdzar49slA775Rcroxzt5X69VU3a33DHNg8ujjiNtQWGM75DCjXQKjO\nhuPtB6fUMwnHjP4P4Zx4CsLuJ5IywO4v4NVTJUp5P4HX58fheiOL8Mq8MX4J\n19dpazxVIQ6UTCeBZyVlJdXPA9Ewvl3FC1Fc6Y4fVzoGx60h5IVIIlE1wD/h\nxU+ufq7AjeIA8qk6vAI3tttlsDBH79+SU7BUk145rBKVpwSzxqaOSwQX3LR7\nzPVNyI8OCPBA29NpNFKwfxc1iGXPPwp3HjNDeVMN+ZkYVnuSWRibg0UUWY4G\nBJrLf3ffyir2U7yTzNksMZX7ZUJJKoLPwaPteP+TwDqbIstwK0cb7Kjze+ZN\nMr4jXU/QK3c+gW/MmvVyi1MVryxXL2gyqrBSSepcwOwyTYiwHYXYArX+PEEc\nEMGv\r\n=joQ2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjsFQ9A0219P+E5z65b1z3rm/fsrHzpnla+So9QS1XAAIhAJ5qlld668IlzrcEJolXM9mwTnhfPWjIFKXceX7TIj32"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.962986be_1533649538608_0.5244276442257441"},"_hasShrinkwrap":false},"2.2.0-alpha.3e9b5800":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.3e9b5800","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.3e9b5800","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3e9b5800","@crave/farmblocks-hoc-input":"^3.4.0-alpha.3e9b5800","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.3e9b5800","@crave/farmblocks-theme":"^1.7.0-alpha.3e9b5800","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.3e9b5800","dist":{"shasum":"613a1c317d56d7abab038002860e1abc9c4c1e1f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.3e9b5800.tgz","integrity":"sha512-sGYqnMgEoCTN1qFvv4zwwz1Kxnm9edSxA288VR7ApT3hv4+bK3x8rnQPZPBrq/p2QpXarA1EuemoGYUNBbGS0Q==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaapSCRA9TVsSAnZWagAAUfsP/1js5j1cJqxiGYv9ldcr\nD1skoiqU286HNjNYLlW7aHuOwaaYIDvrJ0iUhoZgmA4aWHY4B/YhB4/jPU2d\nMZj8c1FaaMf2M/LuVvwj5hgJSTz6qvXUloylQWHl0FFKU6OK0DKVfAPwbRNc\nq/uOkfegoU0OfRnfhYWkbb+aqRdv5F6mb3rIz7ePebDqyZjUezSmY4q9Vgs3\nHMnDr87yeFGWRH822KBViuE1wbdKbbKsZNP6vNYeC1Ju6WL4+WymzA6+7Lom\nqjB3WgJGmKHVrtu1e0AVgJJ1SqI7l9Yjs8mP2XWY/UxM+lrZyg1/s2KE5zwP\nxN8RZaZDUCV+N8gaaZ72YhqDlidFhsdqZFEmWXwNhW603BJJhBRjhHWdFXHN\nVmdMjx3avwDZdyqy+c/PyF1NnB06+aBdNt5t1jOXtU3Xjkg6ChhT1lr4cbLb\n8zpP1gXLUIRb83MSOYcBo7Flr9BQVpO6v97Ex5BvmpFv4PbSUuGaDgd1d0yh\nfAD03ZbLDMpW3JloJMfATd7MPy/bBEKrNvSpTVeCDkbO0HoryacWYR4UgVwy\nhi9KeTZ1xLxa5T5iEwt0buiyJPFv6qeLAtQAyjzvpuCaFX4pOr+UyqxOckgx\nlWQ/YVRJkfplqVIKWCkRMGCZA4MOPk4FPn/K9gAtcB0xDAcAy+/AS/AMxh1E\nx8Uu\r\n=ooUq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBy+K4mo3lBzQ4EBGcmjhP5H/rp0CRD/Yvrz6Ck95JugIhAJjLFKpyyNr8VajU0MRgbic5Xm8Q8RcwO89CbRkQpJJf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.3e9b5800_1533651519495_0.8335681713280503"},"_hasShrinkwrap":false},"2.2.0-alpha.c37d23f5":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.c37d23f5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.c37d23f5","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c37d23f5","@crave/farmblocks-hoc-input":"^3.4.0-alpha.c37d23f5","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c37d23f5","@crave/farmblocks-theme":"^1.7.0-alpha.c37d23f5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.c37d23f5","dist":{"shasum":"549d5c97ec8f8f9ab0c7e9733f54d711627bbb97","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.c37d23f5.tgz","integrity":"sha512-rz/oL0Rk/ROILHFRsh72nCXiYp3Ha0hnk2ob2QyyKjokZd0gtQCW6LxQZ1MtNgi05nOsfEXa3SZznwGtKyY7xA==","fileCount":12,"unpackedSize":47312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaeSzCRA9TVsSAnZWagAADuYQAJ8yucAU+c/NLdLBRNbz\n70aoj7CBeZNWBCc1dBHkFPGFuiEDYw54Y7V88G6zaoTZwytaEu9IRje+1mll\nMLmVORfYOkh+gCNNxE6xunflHU2gFKKQCneukenIdN8OxutOcc/THIKnm4Ww\naWmmDM5EP0zMjQVuNCnkO5EVcM2Y/WQMcbX9JMn824xRjWoxdLCGjUbBhrP6\nGq8vfkvVPfgllwqRl6+2eh8FK5Cbq5YM8Aoxu/10DVgJSOm6CeowQiCQ9Gx1\nRHgJbCUj7pF8uFP6seSPsktNfTbhAKVden2y/J5Flr2zfCHx67dRSEg+okZo\n/UzMEQvZHfEtsvPgQEk83TzwjxJhkmbKwBje0AfhfFwBxJDlkRTjJycO2Ym+\nVhZ5nVbLFrAwVF6SjbHPl36rwvvoyHDEN5dPZObsFONw4pz4R5LicMjg4Rqg\nDkrqWuyDYIHzaR//wKBCtBMo/RmVAXmwsTSPMEWm7nDrI8X8eGqEBN/fSB90\n3Yr6AR48gimEuEA0fsp9nX1B8mZZvpVYWegCW5LF9d+J+ksiRG5GMbe4rs+2\nvp39YiSScpbP94yk5OlflsYZ4wslm+FpNnMSHxvUHHu/N1GTqWpS7U5Dql90\nTbcTJKrFB5/TEa3qrF/oyt08ptAzmDLeN2OsHwxkApdvfl9Isy5/5JWso5oY\n2RaO\r\n=p5Yv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1v2q2VzmiiVW3cV+CJyqLVfg57Q+PcGND2NfubPmguQIhAOQoBHNKJtDrXGb3eCXJrpXjnSVJqgBiYr4LDss6sXXi"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.c37d23f5_1533666483373_0.5135249318299178"},"_hasShrinkwrap":false},"2.1.3":{"name":"@crave/farmblocks-input-text","version":"2.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.6","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^3.3.0","@crave/farmblocks-hoc-validation-messages":"^0.2.8","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.3","dist":{"shasum":"31b5301eec54533b993f8c7fae3d3b3cd981a3a0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.3.tgz","integrity":"sha512-BPDRKlh4YdPANellPuvVnLNeL6KR9o5afgw1Z9geHVIt8ItZMrB5fgC2UR4N7vz81KRmBBJSAk/EIdhoNkaZeA==","fileCount":12,"unpackedSize":47178,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbate3CRA9TVsSAnZWagAAh2AQAJ5BQpsdIF4VNSprK7do\nZSdH6S7RTjux9kHEegcuVKT8v0wXJgA6hVnnWbaDjMA7NfKbDe/ZAxO0Nzsf\nZfc0anMYh9EG0+x3v6M3yoFb2yUhnryn/XU1B0TwAMeZuifkLoacCsoVS1kn\nD5k3KLzE/rBQbdX86t2g00EGRvVs1dW39LS99zx5QuDfDY3Cxq/C+D0i+Cqo\n8QWlFdvcZHrYxXBlY6vURXWC9o8Fjx6vhEiygcZXGDOvIiF9EA/ZeaMBbrAA\n5MkhKy2/XuE3tQjeCQ23WHG/kraw0Ck5QsgSv4XPlJWI8f5hF3BZoP8547pc\nuYLDwRM5Qv09k8TZYeGRKtURXyHJIG7ezvI9VfaqGrjMrH2mPuMuCjVJK13t\n1YGoIC5IfHIp1z0TgnhgSgNPdWLf3fL743BB87pSGYXS7kYpilJ+hGi8bn6/\nCoS9bA2Ht/gLsC5FjHRehTVDR6Uma5mPW6/O23j3cglrm6SgWRauSZe8H9Fl\nuy5XYAEQzNdYme6PDAMERVMTkW6pBllYMZX3r3hCikLOyH7q0CCmCVeRlv/s\ntM21PU11Gpr/6hophJpGUiY1q6bjFPrGideO5epYMkRuzPjM/N8DYqJn6SRC\nN76Z8HDVhsauJA8eiL7Zn0UQb4Yq5v8xUaW/i4KCp20ySRt9UYa1xonnD6Yz\nV5LG\r\n=cApG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHP2fY3owO1zY7gv/HtuWyeUUcA8Ql7teMVhsk5Ql18DAiEAw5VMiY+vTJQr89hfy+tHyk88zPh1yXhmZOH1TKkKtUs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.3_1533728694704_0.4856545724781631"},"_hasShrinkwrap":false},"2.2.0-alpha.0fa47d1a":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.0fa47d1a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.0fa47d1a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0fa47d1a","@crave/farmblocks-hoc-input":"^3.4.0-alpha.0fa47d1a","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.0fa47d1a","@crave/farmblocks-theme":"^1.7.0-alpha.0fa47d1a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.0fa47d1a","dist":{"shasum":"fa3a45281b8b3ccc1e0c63b77e5e8417287fe2fd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.0fa47d1a.tgz","integrity":"sha512-gtHnyOOYXYr+DoRUOuD+5Vu0oZt98QHnF1yGHWsSKAPg818H+Ks1ei83KvF1HnM2l6T/imPTvjLw7TUq6X4Rag==","fileCount":12,"unpackedSize":47552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbayivCRA9TVsSAnZWagAAc9QP+QExWJHRG0G1Z6zg8CLZ\nlRX9IR6PlEIp6OzrVdgngv3HSCFL0pG3P/Zw2PqVo5PJ5K5QA+ic9k3z9Fvs\nzhans7JPspWR1NLOySZ5ZVTwGdIO4ZMXTaufhXbwCz/FJ8jqrZl8MkYuA2Qa\nt6VBKTvQz3fvZkC9Gt7n9pN6f9s4yOmTD1N0oWZFiMGfBW9Sf+xnpk7qzpUh\nfSODggRc3dsBi/mBtBnDPIMAx2rYzCBBQ1C1VpDh/ffg2CHAxbxrCDkXU+z2\nezH6qdAU+Y6t7cXIn9W4yq5kz985LgZBxxJn3G+w9phg2/0mMjwtiEh7t4LY\nwEN3jEm6vjVboiiz9+XUNc4niXd84s+q8K2Zk6I6Agh4rax6qVBQr55+UmYS\ntwCGGeU4SnmRVf8fHqW22rYnfTPn6aJqSLXuK4RxIQSEuTur7uny9P6mnvi/\nxG+W3KB34nub6iwEwaHDmDGk1Fzi8l6+jA4X+kMeIk4SNyw5u/c9aJnanEMc\npOW9qTLBfABI0gqeKDBSkpVCTyAXcERTXFxL8tiTAWeIpRq2sw0LXHGcFcOe\n3jf070aB/DoBo5+JBSLV3rDMSEJ6O319SYZjDe17Iw6egMNRjpxIZoMXApyl\nDCsMQdtVkHjfMr8e6E6Vu8VcRLULMMeK5/oqhF/UKsZAbEnGmE1QzqLj57jl\nGwk8\r\n=5IaN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFEdpYc8u8qRKrn89vkKinrU5xJ4BKciEPa9S4n8RBwdAiEAoC8yaAvvFKJUriILv4sdwd+wN0+L2naCCAyA0ksiC/c="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.0fa47d1a_1533749422793_0.7918345580627675"},"_hasShrinkwrap":false},"2.2.0-alpha.c1e15ae3":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.c1e15ae3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.c1e15ae3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c1e15ae3","@crave/farmblocks-hoc-input":"^3.4.0-alpha.c1e15ae3","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.c1e15ae3","@crave/farmblocks-theme":"^1.7.0-alpha.c1e15ae3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.c1e15ae3","dist":{"shasum":"2b92c0fba10f664d15d777ca75f6e1af0f10054a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.c1e15ae3.tgz","integrity":"sha512-DE8227dx8IKfFPKDVcbrjtMoxjxNwYfV34GfzURtVdQ851+IjlHGGWXgibVjmigtph5EObgFFLW0Iv86P3zLwQ==","fileCount":12,"unpackedSize":47552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbayvdCRA9TVsSAnZWagAAhtYP/j4P6Q/7PrPnL64YUKpB\nTMpFgoE8BtMxMUDmyABRObA5SFSfpFTkqQ5rnSNRdO2RT8WMFJX9mMws1p0a\nqfb57xz8QWYUNSJzWUJqdFyC95LiN0HshMseCCkvj1HuvvIK8964gWKeWYEK\nw0ITDvVU+aAbwkXCvN6jM4+MsN4vi726eXe1WVCEdYTfmS+PNuDWtDrjI7M/\nPI9t64lFOejQSVAr8NRxp054SANRvTQVxY3dl4aEX2RWSzchEboy3g8Xs3p9\nDI2iE2t287AIGr2Rn8B62kzQda+6RAdqbNlMNhOh6Dn6+7odp7FtQck8TyjF\nxj71JkdqvZ+iCnFMz/+OLyZcK5kwE6xtDVSLSY8mlSBq4QC1F70lYsPsri95\n5YtrYUu6uBTFrjIxq8nm3OYZ7fV76WzNeIOUjya+AnX/4As9hjizScbRaFyn\niju5yT5cCEiAfKFVkGRfMT/c1JPcpEy2X2qNWRY9OPfaiSNXpIraRYYE43oT\nQsHF/OWCVl/uDmfbVDMwzGxuLxW4QmavQp7/GubNkhnpLnki9eSywgJXyd4E\nyhR+RINxywn9+wJB0k1bSKV/mxIdzCzL29WbbR38/nXIvmGlhSAC6DjduPvF\nW0d+YgJCN9Mmtpdew0JfgZYi6/jzbyDoR/IVLv1VWfMdQlCBDC43gimXp/0Q\ncUJX\r\n=nltl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDP9hzhfdkJs9nMq/t5u7ne8pOXlECvVQv9LRnJBhgTXQIhAN/nU26W3YUStQm+h9e4ZBYUbePQnH9ruyCPPZblXAKV"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.c1e15ae3_1533750237111_0.5471954639260574"},"_hasShrinkwrap":false},"2.1.4":{"name":"@crave/farmblocks-input-text","version":"2.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.6","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^3.3.1","@crave/farmblocks-hoc-validation-messages":"^0.2.8","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.4","dist":{"shasum":"311cf5c9ca314c3df4a2f98b6e07e8da824bdf2e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.4.tgz","integrity":"sha512-E/jbLUyiThjEv5yAHQwoIxl0gxBtnjH08t9eQyPXBH79IZY2RSk1HibycYF5usyHkuWVoht4TgVXLPsMMw9fYA==","fileCount":12,"unpackedSize":47418,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbay9iCRA9TVsSAnZWagAAeP4QAJiz68RoVY1a8QdvYZbo\ndAelToW24yY40hvpZSVz/NslHzFzCWNitD3HZ02cXckk/aDLrMARKkRt6Ejc\nyl2h1bge3k3mI0WVQ/RilLjmvsvNfqCzHUQHHWDO9Tsm0yz17+/YAzW/jIxQ\nyoU5icXL0JPeo6V7ADUIzQWueSMp29Cbf1INwxDX+5iOar2gCuwf+EdFLOHR\nrqSggxs0R3I0KJwwY+LJperXX5zQueweMqnoKoMf8WcF9PvdBDxfBp6RMoTv\nRxXgF1WriF9tfETxEeJp5U/2dxOoacqVashstMPzPmkLSN0kkw0SAEHu4lJJ\nyZ3TxeXvDW8/sYSyO5U9ru8sqA9Kyc4ultrmIKCQLAZOmPF8TXkfNPBV4TZU\nIb1gw/GdPx48VX6bq3rSouVMhhWGYhW5G9f3f8opBjkHarT1+plnASzDL2Oj\nTMOLP87ftrGqzyhg/Cx5nWot76CznQPkDR4aogx2x25TwB1INsjvEDqhYAxg\nUdl8bnCjLX+ZvqKNEHwlSRVg6zO3wdifV9fUKjb8J0nuZ/lmOsSTNnYmvRuI\nyeSTOphLgyWhLo7c86+iAILUDBF1eY1mih1atrPie+8MMPVd65XSLDbdpxD1\nHH5YVAVEGrULKgxPmSHQM8/yJovUwoZpoTzRNYvVAr05ZnwqD3nj0mOfxtQ1\nazYS\r\n=RvBU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCacZd3v2Ac79Yju10BC1ObSj9KGl34tTJ6w91UylrYkwIhAJ9fKGZppsb61PTEXi5qhS3IeLRJ40gqnJMyci01aaOv"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.4_1533751138561_0.8209729122778633"},"_hasShrinkwrap":false},"2.2.0-alpha.7dbd9ce9":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.7dbd9ce9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.7dbd9ce9","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7dbd9ce9","@crave/farmblocks-hoc-input":"^3.4.0-alpha.7dbd9ce9","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.7dbd9ce9","@crave/farmblocks-theme":"^1.7.0-alpha.7dbd9ce9","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.7dbd9ce9","dist":{"shasum":"1962b6fc3a798d78d5939e8718820ef85983d3b7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.7dbd9ce9.tgz","integrity":"sha512-0uiMCk0lNu7vcmaqjSfh7lZnunfIgsf7nyPF2eLhw25DirqKKXZwoiUFOORQMd2pk6IKRqR1+G33CAWbsZZJ9g==","fileCount":12,"unpackedSize":47552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbazB4CRA9TVsSAnZWagAAiiYP/Az+qPM9iQV/eLZnTKYm\n0XadCgEffGoqDEAy0E+9Jy9U3IDHII3AG83pcK5Zwi8udkhpmKAtPzZNyh/i\nbD124sF5zWyyqrWUXAm6GpEniA+uhQON/33NVA2M0fquXEEuax+JDJo+iSBi\n0/xYPaj4dOaAWNZ3OdTzJKjeDb80DowDWSKz9BoXuNt2ApWHeEb/ii3kkJP3\nbSQKavvCNlcyJcEhxasXLhE5Vm/4KjGgaD2OdvD0H9W2LS6G8AyFALtZCQ9R\nMlmFaZtIS7HhxqG3WmsPHrU2PYWhEuaXRZg0SkwO0R73XrBQZcGGRRc80N+r\nv6P0V/nzWP8TYPkXEd3iu1xum/e9tktXucTvo9mgnkXyP4pF/f3ORUkGyXpL\n20OMB7H1LPykanQ3D56himYu43FiTR6uTxmcDpnqtzD1N/AUDsVLCkprPqKX\n16Bxv/XAFCmuZKYdpKonQ7duJxZMkHXkbenmm69yEZKITwIBdODfrB95w2Yj\nIXeiPd0gBha/bNs+2hw9ZUbjwgJco9xSBV803kVfz0EJzVb1Hx6zMevEJWMu\nQjkJ+8LFs8oQ7AtP/Dvce8c+Btz2UsaaddvH7N3MNjogRSsxz9UF8DROrQbn\nEpXko60INNEQhKM17Z6TixIVxAb4lBJuWsSfBuzZM4haOYID74MN/EH4AOoH\nywLa\r\n=toTP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZ2URBCOR+HLCFAtOKxdkJwaCsGVuXOp4x32iunDRetQIgaAP1eMXBc0Pnz+is+CzhjUOGGmJAPeIqJf6sy+INpcA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.7dbd9ce9_1533751416012_0.6747614510630389"},"_hasShrinkwrap":false},"2.2.0-alpha.e4fd0805":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.e4fd0805","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.e4fd0805","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e4fd0805","@crave/farmblocks-hoc-input":"^3.4.0-alpha.e4fd0805","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.e4fd0805","@crave/farmblocks-theme":"^1.7.0-alpha.e4fd0805","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.e4fd0805","dist":{"shasum":"67ecc67a3fc2daf694270434cec4bdab6cb27d16","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.e4fd0805.tgz","integrity":"sha512-x5tjhFrBrm1SE8dlpRoARyd4qaRkXTmAybCqsv3eelV+IbTCInT+JVeg0aKtU63iLUnTTCbwFc42xuOYvpgpEg==","fileCount":12,"unpackedSize":47792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbJGvCRA9TVsSAnZWagAA6PwQAJEA/N4cK+QItH9ag7Dn\nYpSoUcRtPSp2E4wh0ye6LFVBiAVs+7N3ocGZ4gDy5v9qYY68KtlMBqFBzOAZ\nzQmKo0tOb9ColAdcZgydLbwt+JEGYXzSHIxb4kiCsOq9hVd5nQEfNxLjbK7j\nNpbZm08CtVKmhWXztf1beX58W1r4ZDgzei7rPKbMnzKxNCNqyS/aSGs4XfCS\nkmzTgYcBO8ZfUISub4exlX4fH1/bbe3EV7wdsqYs5BbcQkQUVHdTfI92t+8J\nyKDJa9qBX1jrF9HK2TvvXn/lVFPV6C6VfcGmSdLb2hoBE+OrvOul902m0Euk\n53OTuJJddLqCeSJspQ8btwWChqlviXbx22pmp9b7qPoLf8MpzhiGOg9NSf5Y\nXbT8Pr4dGdHwsynICoAaPJ8QMplpHORr/LF9stxGKrZ7v0Zuh3qZI9P+7Llt\najMbd7DQ/pBsGQ72z9aeaP42D8JzWvXfAZkaPYoIXh4K6fvZaV6sFNZE41gG\na+y+wJk64eZdqBECzs1bSPFnppvR7S8OvHWInE1iKuC2VwMDKI6HRzmkI0/T\n/qLXH1Y967NF2JHmhP5q9sGq0nVQ0gUT/yoOuJu1VvFlyiTcmv0My5LgWshy\nJG8Qv7gH7ECGQLulHwyG+MDgoyr7J6Izowsy0hmwzvcmr91vkrEXha7ZlTpP\nx3dP\r\n=pYNR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEgdjr48iyPubLpTC82iL5xgj+ZPJ5SbPqJYB9HkG/PbAiEA2EBHSBuKDlIY7dMmNAGXdmYUoageSnpOSsP/QoU/Zgk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.e4fd0805_1533841838930_0.44957036324181754"},"_hasShrinkwrap":false},"2.2.0-alpha.a2c264b8":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.a2c264b8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.a2c264b8","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a2c264b8","@crave/farmblocks-hoc-input":"^3.4.0-alpha.a2c264b8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.a2c264b8","@crave/farmblocks-theme":"^1.7.0-alpha.a2c264b8","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.a2c264b8","dist":{"shasum":"2d3049da926a8ccf877eeae12595afac5f074868","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.a2c264b8.tgz","integrity":"sha512-2Fkwho20X52kaLLch0NCa10fIrnWSicUdQpRzj6KGA1Tkr/misngKW8KI101hWj+NVrcjkLqZEIPqunovSxibg==","fileCount":12,"unpackedSize":47792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbJHuCRA9TVsSAnZWagAAfBIP/1PlH4Gr+rl7eOPtMUrv\nOEWr0nCvtpgmocHU0XM1I62Wktl9vmb2gCS/9ptRB5fVb560q4QvdihRxYt6\nf72WNPqa9DR1U/9wMuG4YVoHm+POnhxiZr+3YONwIoS6K/SHm/3WaVUCLs6P\nnV7DwYek0+uzyY2E8goHcteullAaUZ0VEn4ov7vhUjcJp5Wxb/M2s6AhpJIa\newzrJQVETgPnqk1Lup5xpF3MDzhFwgoSWuAvrrv0VhIWqOxzgVunQw+oObag\nDrodZPRUN7hyBFvoGPUurgnhmpamh2p7j4lRKSvzG6AQWbVphSNktrzaAU+1\nCb/5u3NSUquJpTzKu/1qtS633PmfRpgdxA4fU6MsJ8R7JUgSsA037FjVOrDT\nfDiNt+sKgGJ+e8tghAbhItbK32mbnE4YNmSvSDMWn1lQNxo1v/xLve4roxEf\nFv4ylNx2n9JAFmTV+m/xUQBwcqbq3BTf2AJ9LR7M+flR5IIfCvUpEe2X4vi3\nReKtnhulvWQpDqfDEcDwSe54oXYBT/teMwsaWTp74aFj2ochv1Ms3JFytr5J\nGc96wDJFUZ3+4jcqXT2qa0j9r9TFmBBRt6EgfMn1PqB7GnFc44Ro/POCbkJx\nWLs+HT5BFadjR/Td3HvTcA18NuOO/WtnvmlNU2bYYaaE9f0BfKFnrzjZB4no\nCYNi\r\n=5SEk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDBpFQIhNKzIwCoX7XXzawpBJ5VqjdhlCDjhSFJu+cyjAiEAj+M6IwtGmbuT+ElX6q1jRoMZ24OxfNxhONfVnYlP5UY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.a2c264b8_1533841902302_0.882057979848826"},"_hasShrinkwrap":false},"2.2.0-alpha.15cd07ff":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.15cd07ff","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.15cd07ff","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.15cd07ff","@crave/farmblocks-hoc-input":"^3.4.0-alpha.15cd07ff","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.15cd07ff","@crave/farmblocks-theme":"^1.7.0-alpha.15cd07ff","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.15cd07ff","dist":{"shasum":"7e64cf08f6eab673e8a0d5def168789ffea6a21b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.15cd07ff.tgz","integrity":"sha512-BI9t6gLokttQKTfopAiLjF1+hKSGozdA7T8Mm/XD+a/ZqHNmO3LxsXQlWaw/hgSJcrN3sh3UJooVd7qgwEI/Gw==","fileCount":12,"unpackedSize":47792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbJdtCRA9TVsSAnZWagAAJEYP/AwE4DcCelYUAOPnCDzA\n1ZEQCEaeemrR8R3Qr0nnyWhznyQVW7cCqCIatsvQGz8Sz+d1mL+nnJnK+42A\ngnQCPg8Cd+tXFMLcBs3nMQx1UqJ1CDstI6h1ZwhGJMgDL4LQ8DnEP36Erbd8\nFiBEgroD3vuuF8RhjrNsMMEOVy2XgMiubxtZoJdjj6pvIrKRaLkwMUnfiVct\nSys2CZBgbEqzKH1VgMGct33bqUIgglXidiJWabfN3ulT97atVgoRmJk5wBTQ\nBaDEuKovFB4ikJjNRmZCXvqaHTHwUf6dl0XY4/PrBxxVZ7Fhu6Kg1UroN7Ju\nydkuHF3OUpC2D49P06W6NZYAGJHPgDryZ8gAN0er6qQ+WPetbvq9Gl4DklfK\nlPa7rjSf3f7Hql825ogFr2ja+ZJ8XeW9s0AjmPfdXm53hrCdvK0Iwzi9npUn\nVOPzpDe0cg0FTdqP3WZ/ITRNZC+EHDIsrEvIgN9SGdCgYe6YNikw3yi6ZuCB\npnisMgBkPu8aiAMbiwHn6EMTg1QouhXCvpbxZZ2/pSGT8JaBgSslcNqbV36B\nYq1ETDGuH4OzFWzvGyEf2kSfvhlGfmhNHVFm0gX5tgLbQX7DMb0djWsHer9j\ncHUW88+UJbzk8EowGfRjILmBgrVro5wzUcseyGmNkugusf6A5+VjzTrcq8fV\nJ+4V\r\n=3HXT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDQGH6YDmpKVbGcXpDyhowet5UjvwNTeaerX5f+cAwO9wIgBtjJuJTeTXhJpYxphGiFetJpvA5wbaq8GPrkdmgGnRE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.15cd07ff_1533843308931_0.13465856104520668"},"_hasShrinkwrap":false},"2.2.0-alpha.b6d6e7a3":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.b6d6e7a3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.b6d6e7a3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b6d6e7a3","@crave/farmblocks-hoc-input":"^3.4.0-alpha.b6d6e7a3","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.b6d6e7a3","@crave/farmblocks-theme":"^1.7.0-alpha.b6d6e7a3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.b6d6e7a3","dist":{"shasum":"a980d9ab3748c777c5f184f74faf280ecf537dbf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.b6d6e7a3.tgz","integrity":"sha512-DE0hmOA4eFk+6n1ULKgJROeZuWUF4e7aYmH5yiJHqwM+r9ZLpguDmd8Y7At3oQZxm23QEVimIdujmp7G7Q+4Jw==","fileCount":12,"unpackedSize":47792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbJl7CRA9TVsSAnZWagAAHEQP/j3XPzr8GVvka9DYVeXV\nPQBV01bYP5JK8LkyVlL081Bq81dHZF6V94JkBpfwsyIqKOJBr8BgcZQuupgz\nVI8cqBxpejtNeNAEpab8dVQ/oXlaepiZ7/6n+c3OkQap2Kx8lyM3w7N4z5y7\n4STVEk9I4VNFYc9JFTFNir/HBhHU7kAdAq4Ei49CswVKrC2weHuhQNzxR9jr\nu9EuDQZe6F4eZaxDYe/PFey+pdF5c7xiiV/UGiIwS4SYm0qqRy4veYy84w83\nACIkVxsZqR8Ekttj7NpMO8DLCQl3GkoK23HdHzJpw6+A0bMDCGogH0b7ZZYa\nQQfjkTk6rWNWIC3WgrqB9XOGnNenV9I2PZ3GEI+hsG2GLuTpfP0Xp2YhLYrc\nV7y9BhMLUMS7x/xNC15cxt2lEw6zGf9JfUC3YGHYmtXoz4mdZ51oteVd5/Yb\nfyl/Zq2hTu/LnRmPPRPUJjXnwf1OQt4/X5arXHVUmSoKkztO8ykasKAMJaS3\n3DsfQq2031SR9+xJEWFUGViGtThXuDKgwnP3lUEOU3Luj+IAwE4twiyszcY9\naXuwoUcJ5Nt9tyjwZrD/Zz9MwSJuiG7d3a4XMdMFxDJG2W2K/3rNUFmYKQVn\nDN3mNyASRozRKiGus2EcG6LMQ67Q1QCq2eS4Nae5DTPWOKPKN76sEqRji6CB\n8Mqj\r\n=8clt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHuCkKOuZxvfGLUt+POEbaWuGfGqqZJr5msKRMpvlMgIAiEAgsooceL3spy6w9cK8IFcDv2tbe8rm7ytJYFvvNDelkY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.b6d6e7a3_1533843834937_0.5625847125090753"},"_hasShrinkwrap":false},"2.1.5":{"name":"@crave/farmblocks-input-text","version":"2.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.0.6","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.0.0","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.1.5","dist":{"shasum":"bd636f2ef16c2fd4b7fc12fae43dda45aa1705a3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.1.5.tgz","integrity":"sha512-kya5deudNIIaYYCgMPaUrwWehRSMLtB+JHpsaqNu2ZhreweVXCHjDctoBgGLaX9Dfs1FWu+RAs1ANzqAmkD31w==","fileCount":12,"unpackedSize":47658,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbJtMCRA9TVsSAnZWagAAmEwP/3JvZqDRR4OUpZLFYhMp\npsLfnRQOdkXvhwkxmHjppGCy7etom1zCEH6RIY6ctClTDjC6c74R6yB1cwWK\nCnmavQl8IH9pBegdiB1vOKc0CJtGMaHLWtOGyIlCPoilwmcTgTlW0omxDNvN\nXTiTD6HRayB4VJbQY5Tpb/b2OP3hGntE2o9sJOls/w1td7Up7y6Zuisatfur\nE7xbOBlX2As9a4YPLP1vAmR785gg0+0/T4km09hzwv7TYhRaCbagbBY6Tdeb\niLqaQTd5sQoInyK/hk3OzsGW6Mo4KZZSpjTlG04/dSwoqldA2cKSfQrQ1TZ2\noUNfLDJ2xND9J0FZSRyCIh1daxoCXSPj2cAGoffQWZ47Y0XzMYnltEbevLm4\nwHD7tqKEKyAEqRbaOpldBMqVulcWKAKqrBEof0SthzrMOozJ6K+5jQNQCNCE\nih/8VXRRLRq1m5QQNhUTor0v3oCoZlG9le0Whr+Y6izYOqREeklVL33y/VZj\nmZnK8UdzIX7Hcg9ycqhH68X4qCwGq42ClK7VWcwHJlXVS38B4MekQxwFtqf2\nu5Znk/NGdyjI0mTlMLx8okmXZ/cfiS6VmuGTYR9dLE6mBe1ddYIvagXrBOWu\nd7Y72YUT31t7GtL7Mrzwm+0AX4mSM/6yQvV8OZy1NGGgiriZCCkDaS477Qpj\n+FY3\r\n=VYjh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCrsU98vIY3vorQyC3K3g2H+2Ks8AeblHnY3H/uLBgf9wIgaMVx2bVX/6uKjh6dM4rgxRCDziMF2j9awVAGmX5vw9g="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.1.5_1533844299945_0.2365132047876921"},"_hasShrinkwrap":false},"2.2.0-alpha.6d678c53":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.6d678c53","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.6d678c53","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6d678c53","@crave/farmblocks-hoc-input":"^3.4.0-alpha.6d678c53","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.6d678c53","@crave/farmblocks-theme":"^1.7.0-alpha.6d678c53","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.6d678c53","dist":{"shasum":"3bc7ce9ea655ddf7e0c2b7b90d6b0150362ee5f3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.6d678c53.tgz","integrity":"sha512-J8VCwYzeKI0FmF9Ji3J9QwBjy5AZFncwFAqRVvBnwgG+eFb6FmMXQ0nv4Aw8NEDal3yls/sDvew/UHRy5DpcRg==","fileCount":12,"unpackedSize":47792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbKXXCRA9TVsSAnZWagAAcBIP/j+3jLB/UgM88CN4yxid\n2UpSEkaY+gOrRZTP2U10162rMXz6cMxnxry2jXHhhCyuujgptDYzPbgfjl2S\nPXaoUYTADFpUKoNUg+bu90+L6xyumyHyCE1TGy2YP2jjsgLuaEphzB1I6rk9\ne3AiDdC3YEPzQB4XP9zF9XVIE5dQvBsfoOVd2LNlLOtnNlouaj+CLtbZHVkl\nnEXpfbYheHW5xEkQzzXWzSTG30IJbKbcU53WprHduZC81vbDKD5QwpbY/tv/\nHD37N2f4o9SeqvRh8/A1A13lksdGoWw1t0GAcA18HAwVrNX9zKTm6A4bOj2S\nDLKEHd04aXl3sPu1WsdE4pO/99Twdq35K4ZAfLjmgEBgB+2NrdBzcovRp7Q+\nueCQTp0h3d0DFKpGQNJKNOMJSQaycM2skOvOl4JlPPHlcQYZfdMs8+4FBLp4\n6sqYbFZOh2IH8J3Jj2e7XzKBdfreygFkmc5CLG02UFIE+mx3Yl2bhl3afq3S\nBH09dmxjvve44h9V9ez4Y7ze/v6MYWItT6RMkwdKl1Lrmfv/+BUcpwPOBa/k\nKhvA3tr5uBZFCoN6rgJPsGG3SWpSiLDLfIaqB6Dkj2hJsHvVOJ6YnbFM7Wt8\nvn5zEXwcdqAw7h3UWxoy7Ij1oSpBaF1Z9KFDdhfb7yFhrgSTFjN5YCym6Ghn\nVCKq\r\n=AgT/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDm9nsAJ44e4DHxHE3Y2gaLBYwuIP2oDTEoJxixYPQt0wIgOhu3mXgl8Nd7emjAzaY+Fqd9UpxEmWrfqI03Efsae30="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.6d678c53_1533846998555_0.24314269036046166"},"_hasShrinkwrap":false},"2.2.0-alpha.375ccaf3":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.375ccaf3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.375ccaf3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.375ccaf3","@crave/farmblocks-hoc-input":"^3.4.0-alpha.375ccaf3","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.375ccaf3","@crave/farmblocks-theme":"^1.7.0-alpha.375ccaf3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.375ccaf3","dist":{"shasum":"f5d28e5f927daaf743a7aad66c5446e41d7d824d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.375ccaf3.tgz","integrity":"sha512-YTVH8iOxLFAx9TzIAy9Qpq4CTspXKHz2EPnm2fWw4NCmzI7B6FAtLvo/YThmbrxVUNj416jm1IIPXqlXOtKzAg==","fileCount":12,"unpackedSize":47792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbYuSCRA9TVsSAnZWagAAHhUP/A9uSWNY2mkpH3Fwkln3\ngyu8PQ1JIJkw5IUubAaOyZMw4Ac/EQzPNWvAnq80Cj+sZ5sJ1D5IKBb4eC7a\nHN2b5u1q6wt3eOQvz8+ahR0AYemB7X2B79YVYSi1lLxI9JqnQPHl8lxAmjWF\nxLZXjr6RklcWXJwsDrXSKEW1+EC+776lwXHMGfOiy7EXJeTLcvX+8rGAwb3I\nXW1QrrVobsdsAbYAsxwe2sgzLpgnc/MD99cOnknrz5qR4namwxQviILAJUam\nWmazWip5wpDq3NMcnfRDgJCkj8tVksjD5c+8i8XTysVxE7Bix2DPOhNYT4te\n6Ts3XNKhPDwehzZOavIgL33G7CYrVWQsEZOzsvvQgKlphiPQbQheLto/ww78\n+vR42l8dblzMLJWUMj25oEyeQoTI7Rx4wN2DWzYO64e76zMMoC/kN5vz1kHV\nMkmbFqx7p7YV5cqkNyTy1TxYI4YWbKKqAoT/0rlfxZaX0r3GTeTIJtHaK4b2\nKD7flP2cftmyOAfEqGUNC1cjVNfe00epfm0KV+MEFe4Ru+IcXYWgZqwq97ya\nDqDJeAK015LoWCk9DUJF8loM8g5SDXXXlnybl23QmQ1F9GTvOzO/isAgzrf9\ndwI4mVgHa3nRdMzXPOsJBOlg6eRRfEU96FKazie+8HrtYqZrt/2kGl96yHLV\ntCf7\r\n=sKMh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICODUHjwFuVUkHX/zEjjohGLoxxRaxyK92Gi3zgNAlzgAiBzXJsy8MNsxrF1UsLwiVVHH1jrJzWv1tb4g6CnUUYdQw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.375ccaf3_1533905810001_0.6100302532434279"},"_hasShrinkwrap":false},"2.2.0-alpha.ea8890b8":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.ea8890b8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.ea8890b8","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ea8890b8","@crave/farmblocks-hoc-input":"^3.4.0-alpha.ea8890b8","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.ea8890b8","@crave/farmblocks-theme":"^1.7.0-alpha.ea8890b8","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.ea8890b8","dist":{"shasum":"0d785368a978bd4aceb96c5f191f4ca7d6c0353d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.ea8890b8.tgz","integrity":"sha512-LxlgJ542QOB88LJ4X7uDdM8s1vXtwZUdRDuOTBN+f7Fx/gqCQcHRkbZDohXZFBE2u0S0h7D2Cw1IDc2AGuWMSA==","fileCount":12,"unpackedSize":47792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbZhfCRA9TVsSAnZWagAAUTcP+wcRXJ+x5qWwImcJw7dN\n5fItAHXpf8XnRB8vfsgtEsKKd7BJyQw9i4dQ+PnaGEsAHLpMIKQi0XmVnpdp\ntZvOsRNSr9leshs5YqoDcMwtJDYM5s5gvW5ip/MIwMstt5Q9FYufyMDtLMDp\nH/Fo66M9vqDhQ9FNL683uRbufYOH+138kj68eWoBUeG4TEEheOhDKLVpFAOW\nKrTiCgM2kGlJeY63sg9XP5eT3iV8S6gh+gDRcN6wLjus99hd5Ovv3tRlRXdb\n42gMWCja5m6eDXi2wN5C9gZfbSifwelBPUhOZwuxbaYt0fLbQmSyzdqIUPui\nUksirZJWHZjKSAoVppZX2MUEN1TZ79V6g6mn8OCEDbfhkk16uVYf1uc3DoQ0\nfaNX4wriNk4GrDjxmX03a9m1zHL25OvSe2rfSxngjKhW1St5LCyckFzJm/Rb\ni1Mq9gPHSWaTm9jSwChOB1eE3HdbqS1xmWaeljKfv8HHtih3OSKeyjRTHh8H\n1VRoSYLgO8F3M/jWJaKhjvVFF9ecSLFiVBpxp1zp62CgP5V8UAdbXWbk8CR6\nGz63GHQHNr76qZTCB2Y3hx74OIP3aUnyh2U+lPQ7T024bIqRJdxk1K2oJHwr\nKa86DhHerHlGvTf9eHQv8PU7+3KLaoyiWCtIJBatmdWRR0M72SxhHUsJ1uHJ\ng0GL\r\n=EEYc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBWJyLLLNmFtYROLe0Kyerbj+IK2BeQfQXvmUUDbH5BKAiEAuOzLvEEDpJMXOx8kxdVRaHG/dPJXqWKaTZ6GCjwJhkI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.ea8890b8_1533909086649_0.7225869540916239"},"_hasShrinkwrap":false},"2.2.0-alpha.43b297de":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.43b297de","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.43b297de","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.43b297de","@crave/farmblocks-hoc-input":"^3.4.0-alpha.43b297de","@crave/farmblocks-hoc-validation-messages":"^0.3.0-alpha.43b297de","@crave/farmblocks-theme":"^1.7.0-alpha.43b297de","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.43b297de","dist":{"shasum":"9a7c3969163ead3f6156e5531fd648ea39c78b84","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.43b297de.tgz","integrity":"sha512-1VyH6GCJvHAdk5LT3bqj+07lqO8l/TUUoQFdAS8IvyrfHUvAZae8SDsY66CM+Vdgwel4MNdVPwo5qQOCLi8bZw==","fileCount":12,"unpackedSize":47792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbc4ICRA9TVsSAnZWagAA9W8P/jji/DP/t4sgigKPvizT\nOosR9YYeVKXQ+dEFqRN5SiNj2OmRhmNQhKxwi5DdDc3d34O1XHQmCK1b2/5X\nsh7DsYQzjOhh9xW2uS/MnD88thFiOM6NyQIrpsMRoixt6xco6XGadg/6210D\n7X2HqZkbTuhEco9vugV3pbxiKoeQL6QGSy0kjD1xwTij2P7G65t22aCnFKaI\nqFpmO9Voq/JboKkfmUPqaGt4ezPcqEDNhuhgqmmlqGPR+8DZsDID3PQ8X7V1\njfOK1jTXz60bLH+GGsxNtqotyN0T2rmRE8lWg8BKiGdyhbG1qnvcnifu2Sux\nEnEogLObsBUZBBhQOEWPyWKKHnG/0lexFgIBb6wWFktPth32WcVkNgmD+K36\nYbB9Z8QuIlAK3VEn28L37O7foevXdYldr4YoIVhy2dfz4ZN9tr/JyeZUI/6d\nKM+pgY/FGknqfWKc65DBQ+Jk7re7FLkVPCGrDMA9WgmVZpY++mSRhZR2Burv\n+8qAKP+MD1kznyVqRM5BAn4p2L3Nj+LZikTb7HqVy3PF8faXWg7VImxhYETn\nNy8rcr5iCSX8n0kT5qeAPPQlhucEdSPHtFBovDUkEKMkdvCjG8dxSIO84x/C\n9IN7eaT6D9c2M94PSPHNxaHerFUd51DfPvLkogR2K3HLme/wG/0LV6GfqYXr\ngyFT\r\n=3BDV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7k3p1v6MBSCUuVwebUmNPQB7ohjyFhtM+uRF9MNW3PAIhANCSxhm0bLnOXg7gI8jaIgneRUHMBb94oIAzLLLaiV+E"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.43b297de_1533922823471_0.9624370088545429"},"_hasShrinkwrap":false},"2.2.0-alpha.d6d6ede1":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.d6d6ede1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.d6d6ede1","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d6d6ede1","@crave/farmblocks-hoc-input":"^4.1.0-alpha.d6d6ede1","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.d6d6ede1","@crave/farmblocks-theme":"^1.7.0-alpha.d6d6ede1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.d6d6ede1","dist":{"shasum":"ecce6fcda6d35168ca0b77f4113651db4379277c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.d6d6ede1.tgz","integrity":"sha512-FHyk+zslwOxhn/85aUZ/y/jEBLgWM2/dr28W6LVzMXz4X7zxwB5BMVKsjWnYffppq8g7K8JS+rS+UmOPaYxylA==","fileCount":12,"unpackedSize":47897,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbe4MCRA9TVsSAnZWagAAeJYP/3Tob9RH5mRSZg0leoD9\n4B9SAL9LJCJh2xLrZiu1Urp4+3/6w7k7QJG/aqrN4v2Itj66AKXDb2ddbnav\nwWovogEMbYx+mW8QKTGLuRYmQ1fwKkFh3fN/+NA0nOQ2w0BcfWzSJ+d16RCv\n3/lf2dZntYE7ctK5Rm5Kd+sRJBBAF/X8JJJfeWPgpg/pO68Hdn6USmuxLE71\ngaob90/52Crn+W64cqgzWdmOxFIspSVO0sO68XGw4ND3XnfNM8QAnzll1KuK\nHcHIKRqmOCDOHeit869+ZhbQ7GTeQMd8V/Yq5cPJ88GyXGMQhxqvLV3KsJeO\n925Joy+wwJqoOTIJqnfXw+ZmNFIrd3krEHZKCVj/pmZh4FoOgPH/tfKa2dyP\nBQsm2ERHpOQ0VGvqeM4CQkm31hzZ2qugsTc2Mys0uLuQjLc/LvP4+iRI11c+\ngcCGyNw4mJzhJbW+grBGi3oJY8W0SSFlwq4tKrIWlnB8Raaig+OhGNiectjJ\neGuaAmJzZpF5dsJxaQQXRqieLlHEMIyrzTeG9txo0vVvdtCZKBDeiR047wk7\nPdA+Q8UdIpwastETeMmlmKNZFhkRCRKuL8hLhnBL+czAcUXQnQg/DMKVxmYK\ng+2RUcBNH2U+VPKxiXXxLSC5cEUsdCmyT7gfgqu0PcamdPoBguYeJPevN7sh\nsHeE\r\n=nGvT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbfNo1HcycZ/YhvstG5Q1YH+KWfrGLc7WwzwaxmmBTYwIhAOHtsYVgT4i2rswgxQv2x+0okqVVOANeho3k8hNnNSht"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.d6d6ede1_1533931019564_0.8595480960805093"},"_hasShrinkwrap":false},"2.2.0-alpha.6191ce51":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.6191ce51","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.6191ce51","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6191ce51","@crave/farmblocks-hoc-input":"^4.1.0-alpha.6191ce51","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6191ce51","@crave/farmblocks-theme":"^1.7.0-alpha.6191ce51","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.6191ce51","dist":{"shasum":"e9698eb59cde3e2fcfa85df1be5425b18abfe4a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.6191ce51.tgz","integrity":"sha512-iKMYESaxj0x6FohnzzNSWbISP/Yp2QpSyP/5ydpVk9ngB7feCgWcq8w3g7ipZSJsA7fh/tJhb5dzMrKBx6h8Dw==","fileCount":12,"unpackedSize":48032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbnLLCRA9TVsSAnZWagAA7TwP+gNrMXHvX/YkyNcxcw0D\nmMMvhLNEm0LQHSJmD2A+fEgh/9jR21m3DusCdanh5XYRIT/KZeea5BkSidsz\n+UseA6JuKcVoGeK1urqFEg6MszxPl3HBhvcb/FK0kEBkvfXnUK5KXQrtDPOR\ngqVrA+t5r7ErFAEA80gc9kxFTpse35lxvK3ZCd8RXKephU+wyYT6CmQQfxYf\n/ZuH2U3dEgVfaVjNlJXDMszA8XtRVkRsqMhG1GuDkNvft2HZr0buhZNlsgZj\nEQUn7V4B1kWW1I4HaxkUh/zANmn2riZu30YX0bqhA3YIQ6fgkNSgq2Oog1Mu\nhp8DZhvNXEjGgD1y6ErB+csmw5SfmF/kKjAb6kWnhMNV0qxoTCpD5ZQnVWd/\nkdUsUYr6FZZeIQhxT76hCcP63qrSf86skR+EFSs9z5p5W9fEsjyCQkoHcKu4\nNa0LYc81tirYOmQALO6LYeZjbyklMoeIOLwLSoK7zEXX/qdWQzUOsJ8HzkD0\n1wo8K9qisgIde1HxpdmFiCYUHJn4c124lhIXOlVfXc2mb10SAxO2Z6+3fXv9\nGVXtOV5poZ1BqagJEsfMLR26/Vr8SQgmrD/wNlbaVcUpmp1jN0AlfIkZ66OD\noIuJhmRxPFh5bqj0eJ5hakC0gufDw8c4wFp8wlF1k0zqMMjP9Mr6Cvy8+YN3\nVJVh\r\n=WFG2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBCZplHFPRK6u+0UZv6SiLwoClwn7BYldFBEhoQcOhZtAiA0C7RsmIN8O7p6+ge/O9t13VXTsrGK9+GUaMLUMv8+2w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.6191ce51_1533965003081_0.46141759659305936"},"_hasShrinkwrap":false},"2.2.0-alpha.f78c9fb1":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.f78c9fb1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.f78c9fb1","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f78c9fb1","@crave/farmblocks-hoc-input":"^4.1.0-alpha.f78c9fb1","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.f78c9fb1","@crave/farmblocks-theme":"^1.7.0-alpha.f78c9fb1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.f78c9fb1","dist":{"shasum":"f753890c2196a4bce7019d28b3dc8626cca49a0d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.f78c9fb1.tgz","integrity":"sha512-OPhX/NzAI6ktVsXcRh1YNtvsE7B1f0ULtJzpQ4qqK2abSJW5x7nMleKfGRpQfVJzik2UYlhgg4OZkEgzMXrAeg==","fileCount":12,"unpackedSize":48032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbnMqCRA9TVsSAnZWagAAiT0QAJoGhaKjxWkTDj/CTZq1\ngXYMLfGH2B0+m6buQEevW5B7uAH+kZadbG0NnV2+3+n8ftufpF6gtiYor5gM\noacHbyRBDyEt1kb/tVIjlEF+MTeoi4AMbPCnA0np0CIIIKq5ANdo1DwRMnb/\nz1M/gFRWrkrT3D7YlFeRUqmHTYxSXHuNQYCReakWY5iKOlF30eWw1C7XcAnp\nJxsI9L9EeLHGoHabVdWFeX+BWDD8wvrUmPiGVMWKEktWkBOXrqczEGlQX1ry\nNDILy6nTqRpsYvBIK0hSEhE4gVcO6jusGpL89Ov9tlw7l1nfhghIosbgQetc\n1S6Z0oEk9svzLworgS5S4RcSIcPZc8Mym1EbhvjWJqdEBLXcvnMxb6SH7RaV\n3Fb3jARPDKIEUn/miLUuCokyj0RgADkSpqQVQKjER4z4On6edPSnEtTVCLoB\n/zjtDoWfkYG6dmvZ+/3ykG3pY8uqPVVx0OwgSLIZyw5C4iyMqtLFCt0kjr/E\nUeWxuptSPC6iFQoccnbdOAcEWnqQozNSx5dH1UIyAWvey7mOetpL9k9rssFI\nQSM7onUs2P/3s5aA9YCyyUzJz1xztkBL+yeWtpx02t8XkGwO3p8qSvvlMiKa\nOCDqn5f6ciW7m3aukyDHSUJaYcme4toXaF2Mhs059LeiODPNckBkQRe5tZU2\nhgUc\r\n=PhCj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFBCFCLWvajSUQI8UCHecW46qm1dtLfYKUpzHYgS3ALjAiBUjJhvL0MbeCne0thGCI2dRFFkH4GJ4lFfHuNafOhfgQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.f78c9fb1_1533965097706_0.13035392129472267"},"_hasShrinkwrap":false},"2.2.0-alpha.a4bc3eeb":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.a4bc3eeb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.a4bc3eeb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a4bc3eeb","@crave/farmblocks-hoc-input":"^4.1.0-alpha.a4bc3eeb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.a4bc3eeb","@crave/farmblocks-theme":"^1.7.0-alpha.a4bc3eeb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.a4bc3eeb","dist":{"shasum":"cacd48266b5c420bc1acbf4542a8b994bcb2c14d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.a4bc3eeb.tgz","integrity":"sha512-YhcZpf+ExVR6QjVuTYP7fZhIX606Hib1H+E4xx80V3XBCXb8S0PuYRwwQdnZoQYerELo9/+O0ymFXjeaxuqHTQ==","fileCount":12,"unpackedSize":48032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbsqVCRA9TVsSAnZWagAArgEP/R2NtWreJst9sD2L8q21\nbvhZQkwwzXiBxa6Lo7xlSagWGagCwTKBggWb+FwxXTG3aBFwLmG8402Nya/s\nf0sFXPC1YGIj9AkiISKZ86q29aEXRZ4PDAomPZiLkTrfesWyILf5DFLAyben\n634Pp4oxfpEfty2v1UyMaLrhDYfrRX3keGusGezZr/IJMOOs8EW3ZfdWIJVV\n8HuXZatioXxMUhzI2pEti5GErP1NUO4ReEAjAVEnh6fCXa9lTHIsY49YV5bB\nsWXT88WSxzZ+qY67jPPjToAtkHjxxDeXujTisML7E0TUvFwMpsV+IMZyovCR\nOPK+FATwQ5+w+b/P/UO2lmaplt6TRYcBaIyX8a1m5g42n17h36q5jvKaUVRv\n+0d+UfVcZ2uUNTLmjrenTO0HoqjlCHwVslroJLpmsOitteg5g9/a6GSiDflN\nVnypl+dJaOCJY+H27SFJEUCT0F5mPYEHwv3z9FlTZLJNxEhvcyJw1ZAHrWv/\nMi1+FJe5VL+Fz4Vxc8DA/E0IcggOr9kESCi1Ktu7PLsixLy4+3eUgnGhyJOv\nIN1r4HVP6Rkso+N3PBoZVTwRgEhfYNJmnwCs+RiqWUGpJcHAUjHcSidwSvFL\nMawd0juX4aMU1E/mIP8XwTt4fXBnAm1C4efAr5sEoV/9slQ7A6+/uXqpWf8d\nXAVC\r\n=t95j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDkS/URL2JY2XTVbaKtmcKkHGj5FeLTM0F3fgyUbvqTCAiASYreMk0VMPJO2beLT9R/0xYiZfqfie4Hq7Bx6w2tT2g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.a4bc3eeb_1533987476533_0.8851425559324142"},"_hasShrinkwrap":false},"2.2.0-alpha.588b3262":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.588b3262","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.588b3262","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.588b3262","@crave/farmblocks-hoc-input":"^4.1.0-alpha.588b3262","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.588b3262","@crave/farmblocks-theme":"^1.7.0-alpha.588b3262","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.588b3262","dist":{"shasum":"39788810871a4a171c15cfc0b4a617ff0c1f29de","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.588b3262.tgz","integrity":"sha512-Nk3pP94VzNAM0eJTgiLKNUv0MFwYFFxsYHacWt3xoXO3j7khTdeW/sP5kAUqIoPMNqaguM2uPWXo6P97lBJquA==","fileCount":12,"unpackedSize":47604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcYczCRA9TVsSAnZWagAAfCwP/jLjvoK/9RejodvqJUgA\nv8DUy7QhmoN3YwsR7s7r3/edpmU0lwuh38IVJ3WgKPZ686AoTHVFlvVJsCZm\n2ebO/BuzjpsLOPFRhrsqW4Z6v5MXhYfhsMYQ+TIoJSR2Y2uC+Y9RMLfLaaa2\nrxGR3VeGgXrpd+d5V9C/IMHqdfHLGAWpztbchqw3eFlxeaL+boCttDUXiDaT\nTZavQEpbaHOVsFlm/fRx3I1n0RbRTod5GBQwsEbOYku0WrOrQDbLc3kclmTF\nUj249J302r8h8CziRwNKD8NY1/tmmg23wVvGo1+Bd0136Vgdox8nGFeFwHWd\nyA5xNIf6SIA2ZleA8cC2qygK0gPjzROMs8bs2VT+RVtlGVutBxhZ6jAPpgmD\nuJUwvkP5OEwSBA4AjiEbvVIFKq+E3S0YYvaqGhZJVIYvyMzaXKy2uq+nd6DI\nWXEyM3rRtNU8yLJxLcIyVzePVzF/+ZH3fnhWdLyA28Ly2ab5Cpaon9UPNKpr\ng7zdeinKBiOKvW/QMIcn+iTwqbi+uWWFJ7GC5EI80ARY7232hWWLRMiie5bk\nYOwH7m70S2XsOQ5rbCbCw90GjA5gZ0d2RyK0hC6PLcMg8W4ArqSg/hRMbZsE\n/oZRTgADxqZwcc/clbYuxql3eR9Z3ghMWno1Tby005T+BWb8J2XX27QdIkrm\n4GR+\r\n=mc1D\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCL2DGYm/ho0KIUTNzThmbYROPDKkDkir8qhcCEh73wggIgfl2R4e8ztg1MhO3itON+ljjc3/WqbNBajjYFPdc17j0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.588b3262_1534166834861_0.2020714053167585"},"_hasShrinkwrap":false},"2.2.0-alpha.44455819":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.44455819","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.44455819","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.44455819","@crave/farmblocks-hoc-input":"^4.1.0-alpha.44455819","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.44455819","@crave/farmblocks-theme":"^1.7.0-alpha.44455819","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.44455819","dist":{"shasum":"4f641fe05d434d7f5ac9a7929c9dbbbd3a7f86e6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.44455819.tgz","integrity":"sha512-TOUSU8IgS3ji3nEB7+rPBXsgfKZHqXrH0ib32LC9cNxcI99QIT3FdWxiWuAs1MSRGxB6FtHmTkl3L8UJvck+6g==","fileCount":12,"unpackedSize":48032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcY5BCRA9TVsSAnZWagAAk6cP/Rkw/aV3J/vFKdP7+1Hf\n5PyDHQlduLFgaSr0bTDpdXXxenfuq8rvASo0I60x8xdxWF1vjE+B8wZRZ9MJ\nf1oF4h2pQz7GkCL5BbBUPyyzX3qmK5E/Oks60aSB8OAJIz7SDykJYI3b1lTW\n0L/jrNOQ/sPcqa8i7BeR/GKJVLHBfdd8+zwXjqxZfk1TCQJgQ0KrVy9gEr2b\nI+u5pytIr7dV/0tySrpN26+SPc4OvRuYYvCLyZruOkrblaUKEfbrWqPXZr3C\nLns1/bjp7soZWeLJc14iaj13D3tiCSMKKcBYxyCNHRSm0pk/EBuQL2ZdhlwL\na96DRbMzJ/v1V7oecNFmsQUAlSJOhOETB27FA6AwwKX8FuesWzbv28DpWUmR\nf4t3aEpgrhAi454PSQnEJRwGUerJfXOOlRTp/6Kd7U51bb7q8VdR1cL1B06H\nc6o1XPalntSFCXa7D+FyP1EZgLNk2GK4wRIWpCe4kw1Vr+KG0su6IdOFSRmM\n7V0oNf76/R2bJDvTH6MvAehYQ4fsunOjQ25tLlpu9cZhTmiMYzjmfc8NM5I9\nsjP8kyNTR9ikjVnqsZ2jTYQXMNLUFoMn13O36d6AZcW9YYXqmy/+HjWf1Yb+\n+RDcNXcdwijK9pAMNGBudOU2XNhZEyvSGtXvygkXYqlhvRcuRHod9V4hZdu2\nz2ls\r\n=Fy2U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDO+I/7or7fFyfOhB+mTRvK24EFOLZIsFpolWteD7qW6AIhAK1letxY0p+l6ClucUmowxEAmTQdI04Pt2q2JTyMDY2Z"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.44455819_1534168640801_0.5762974478125131"},"_hasShrinkwrap":false},"2.2.0-alpha.42ef722b":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.42ef722b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.42ef722b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.42ef722b","@crave/farmblocks-hoc-input":"^4.1.0-alpha.42ef722b","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.42ef722b","@crave/farmblocks-theme":"^1.7.0-alpha.42ef722b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.42ef722b","dist":{"shasum":"d1bc5bd1106024d2e4d8c4ddf1b076b2054e31c1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.42ef722b.tgz","integrity":"sha512-V1CHTk99VdP/+8sgN2tjTK/vWGjMHKQqttMW+Ti8LgcgsBOFZ+rpGMTowpyA0kqpNaN6eIdMJA6MjxYCwcX+Vg==","fileCount":12,"unpackedSize":48032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcY/JCRA9TVsSAnZWagAAvmsP/RFyxorBDHPLZPmOj3ES\neVNvRo6xGh3Clph5jBgfkR9dD2Y61/VmyWG+O4OSx4R5XT5WEZNi3s2V7tQQ\nI+1Kquu1aStiHI0Vj4mSuJ6XgwIqT86AXo9THLM1vgM4lnyc+8/6SNzxtHS0\nuLIqwJE5qV8Qxp9mX+aVqMN4G5WYlYkMGC3MtcEgwWzlaaHNiRYfkARpYuwp\nNcrDLrg00egv5nDKEDm3jM/CiON23L2+APFJkAki4AipARgzbBuau3gJCS5X\nKupURE1gG/h+JThtmh/ZttLsrLG4suqwe0pZ/2IgrD1o9pnr97X5/VSsXXKR\nmwTfeXNj6XrEPmDmwJGtZvqMI/vpaI2QPRVh9b+DRQ4CKElwWki+IgMdlysd\nH5oeitCd0npOAkiTqrZP5iuGHINWquAL9eAA7IWcrlL9eTRbRw8UMWtAqrfU\nXf7eO+FBNx0D5zRwZg26SJ0kG6rwHAxcSFKM9/LJa/ioUbX9lMss9ZbV8poV\naB3FYcUEvnmFrQ+OO2QWnMrgDvsjBS8A6uIH0LHMMcVHqT4t7tF0BZfTgQCV\nnIhfsmxeWApyMRQnu7kzCrtoLvhtT1ZKTfmsKBGeetpSCNXppe+kDvfwOLiU\nUjKhZTTEZP4ByZgNkN97ZloXrh20QhEcnYay9B6kP21WtrO7udXiZeQW7K7X\n+IP3\r\n=PG5p\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEkXy8iuU/aHf0s/YCe4Dnx+sZ003lTU/IqQhagpO2vwIhAIeVBO2x4S3J2CPIgnhSyWfSqXKtwMUGg0t/FL84F7V/"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.42ef722b_1534169032859_0.8449582993662861"},"_hasShrinkwrap":false},"2.2.0-alpha.b5edc8a9":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.b5edc8a9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.b5edc8a9","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b5edc8a9","@crave/farmblocks-hoc-input":"^4.1.0-alpha.b5edc8a9","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.b5edc8a9","@crave/farmblocks-theme":"^1.7.0-alpha.b5edc8a9","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.b5edc8a9","dist":{"shasum":"b7683291f0e3a2e7c6d169769b231e3e3a3c8fd1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.b5edc8a9.tgz","integrity":"sha512-ne7kyKVh7rPjsauLutEVbNQn+q3cV+xrmvGSeqB5Y4ml7Rdr1v9peX+O/eiTt3v1w96koIqq+uqzRfiqqx4oxw==","fileCount":12,"unpackedSize":47566,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcb0PCRA9TVsSAnZWagAAjTgP/255ZFanZqZk7NOu7Uvd\nXHMneqjxV4qWvy+2HidqzEFdxOtMBfO0xHw+pfzczp7icg+1aWadE2z18aiW\nMpXHScjDT6Bu+XRVBjLzteNp3iTPiTEMXN5Nf8XLUOfirBmR4tfpbNGOF5mN\nlQsaMJTihoyQ5FC8044yzeZwD+IWoHIb4z3rMIGgi66EbkDPUFI+VRks04bF\nH6Z2IBxsySijXrYPGA2m1x3RkOqrzXZR4vg0goB+dyOoRYHgp0qL4ZmZJI9D\nf/rEBlVkz0cIYVdPkRJQVmQze1zCzqQj1Eamvh6rFF2ZUL9lTwdSVPgwMcsS\nAqhNKh6boD2ENxfbhPoqDe+Xq2fbzNUlVuh+PfVYxaLiEnYufaIe8c/lwNVo\nyDMD3ZN3BCpqXvOKoltD1Jd6i0oQf1ICNtH0qVbVdRTKfARFdABuUnUkoTPZ\n8zt6878XmM6Za0Qre7QiADdpD32TSa/sXv2lENwjnjVitjCJnEPguOpcLy56\nlrjiJ7TddhJMAk7LPLdM4Qh9B7Zt6kcYSWISKMpzseVND0Lgbgq1cZdrTjIw\nm1zbAWMAGFczno+cBi6VAiO8Cdkvk9OgQiUVvHUKxpaG/cQSnUNqa8pObjlx\nNFtsnLoBPEXdc3OIqwD/9dCHOrF3HhsFinXNfFgIfAqJRV7JJQzkkwvFm80G\ndV4l\r\n=tSmT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICL4ErHMSYc7D7dPXYd65TmClmq0RZCAv2uL9EMzYfypAiEA90I76pJ1G+kxDZaWzuiqScN1R2KtVqbHDJrxnw9Kxbg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.b5edc8a9_1534180622762_0.6539050567210487"},"_hasShrinkwrap":false},"2.2.0-alpha.7842815b":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.7842815b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.7842815b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7842815b","@crave/farmblocks-hoc-input":"^4.1.0-alpha.7842815b","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.7842815b","@crave/farmblocks-theme":"^1.7.0-alpha.7842815b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.7842815b","dist":{"shasum":"1a8d83dbba39727d34903e5fd681f720e9acd252","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.7842815b.tgz","integrity":"sha512-bbi4jsHYccRtJjQLv9q21e2wBuay4Y0CThfuJfLxC87TvbAY3l0mNX/jA8o4kD/p2grM+Br3OAcZUQtnGWh0Vg==","fileCount":12,"unpackedSize":47566,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbccLVCRA9TVsSAnZWagAAqyoQAJY/JckoeAvyMFPAvopH\n93b3nZ5olSu5R6ZHTk+VsQeSO7NXMmdB44eZ1e821viX/p4PtCyvnVLE8joZ\nm2Mqeuyx4zVJ4ZvDMgpun/X8wMd1qtu3mnTQ4/fC0j/DvZGArsiuZDtnj8Vc\nUtP6F86lD9EaNay++cD0wJiu9qOmlC1trMc2EnfqyKpJXiTNMlMwLdwbaNDn\n/W5zeeXU9xLKrz6gk9CojGmYekwbYOzab4AzdF3CYDOd5VXucbAGHXhbHNK5\nzO0blwwwi32XyS/jd23Badx9dXSNXRLf8NMF8EE9ouAhc9HBmmkeWBxSPNTI\njzz91f8y3SMkufM+jPO3JKevbR45zFvp82PHj2Xr8kVpHrTGfQrJGaIOrMkz\nUNUjtg9+TZrGMBDmSrS2GkpC/hfx4su5dtZvRIVp8fn/175ihx6M293+kPro\n2bsajYRKo1q56yB1YNCdt9qBdaPGDQ4xdBs03wtzZQr6hN3EneM2ZzNHDRFl\n9sdefyBOIDNQTxoKty7mz9m1RdXuNWDZ/blN9DnLPdP7AuARq7YSdQNHksBh\niTp9t61WjcOE7eY2DBUdFPraVakkXkkwT6rEsTSqxmuNyBDXFKXe/uPbpEet\n707kGN2LvFBjLMfWkePx/IN+p+fQrNf/VpZBu5gu9n5+jKoR008ciF4EsXL6\nMEi5\r\n=Narj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFMgSEk/QxE5bn1YjapNMA4nnA9Zz320Efz8OoIgpd+jAiEA/lmcKNPYfwxxrVXB+c2VxkJLiLPVgG7KEk26G/MhaPY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.7842815b_1534182100612_0.6373992670718691"},"_hasShrinkwrap":false},"2.2.0-alpha.fa4c9db5":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.fa4c9db5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.fa4c9db5","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fa4c9db5","@crave/farmblocks-hoc-input":"^4.1.0-alpha.fa4c9db5","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.fa4c9db5","@crave/farmblocks-theme":"^1.7.0-alpha.fa4c9db5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.fa4c9db5","dist":{"shasum":"34f45ad79db98094bf0a1a7953310b22568c8b1c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.fa4c9db5.tgz","integrity":"sha512-5y6Lbd6H4LXZPVFoZMb492h+vkUM7308iSDInEcL/WuyGSaBkGGKE7s4ReCCgrcjFdOOw0RqtbP0Lqe1lBfS3A==","fileCount":12,"unpackedSize":47566,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbccmMCRA9TVsSAnZWagAAKWMP/iQQRwWqfLLcXs7H3Nfq\nnhiYYBXA6anVAro9Sa8NslxmAwsRJmwZH7cbxy9j0SUb/PHh6k0uvAwSVWUy\nmltQ5sSdpCShJ9UHV7t4EKy4cMz2X30HhNKJsKLg9LpF1ZX6DzwXpGIbKSYQ\nMvMI0KEXY7YLmILZ73tdUoknUtVhux4NjM3KNZlhRCfU507sflABBmXmkfbr\nkyW84OCAwICplt6/PbGtqZXRWBtUGY9ParRyUxMUDXNqjR1RosVc3sto4MDB\nLuPiQ+B6GUrO6seD2PvH/s6t6MHvuFYqSX0DypxCNFRZPybSQg+OH/Qqw5zD\nL/aBTnB8qXJMb2WIUekVLFwMkSUECq1XN4FbiNWHiFFoeAVrZSUFs6NDGeAi\n3aTi/RKirS672q7OErnmot/WfAInQ8H4II+1ce/Q6VYXsq+y1iQ792QfBiJt\nOmLqZvn69W0e02lQznqR5TxyNLEd5/5RwTcjEZsRCJAIYV/JcEIYHmpYrXNO\nUc92J5HOzLoeSS9f+PfJu77nMNOyvoydUnc1sAY2qc7CQqXhhQ3X0mH+SK2V\naQN1PgeRf9wC1SIbORgr2ZsLCD9fyfEDW1U1WEVJMGWUVL0SC8oiS0CbA6ga\nS9CTySK+u4SNdZFrFk11oft5C0LsNtWIpqJARxU8ZhD2ZurO6KN2powUusj1\nPu8H\r\n=zCF/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCBxMmnDqDOhBowIHYUgqM855hJDA1m5AYxMDcFkhbSqgIhAPio3pSGhtmfQimjfVcOSfxdk9ZLu/B2/D9hcEmLt2g2"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.fa4c9db5_1534183820514_0.5545378622024848"},"_hasShrinkwrap":false},"2.2.0-alpha.72fd3088":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.72fd3088","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.72fd3088","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.72fd3088","@crave/farmblocks-hoc-input":"^4.1.0-alpha.72fd3088","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.72fd3088","@crave/farmblocks-theme":"^1.7.0-alpha.72fd3088","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.72fd3088","dist":{"shasum":"5e54c3f6e52be5b73a12b5c49405140de6ed1ecf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.72fd3088.tgz","integrity":"sha512-ptq/YPZOxwoqroVg8iVurPb0CFfrytcpe4nQzfEKGCSz9cfeHVQHzR2yUK1baa0zzH57WKq02crm8LUbyxlBnw==","fileCount":12,"unpackedSize":47566,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcdljCRA9TVsSAnZWagAAT9YP/jmBk/VkATuoU+tUqtFy\nPdrZrOFDq2UknFkBo+19y4N8F6hOMN/WNfDaoE9e7sKi8EBNz4iXbNS/nDKN\ng9ZPYU204e+UIJh6jB0Xi0LG0SqaJKQg9uwXnazSFefLMTjL3wMkCpzewsdW\n/mZ+NSPIXamO7F7AMi/m1F066Bpz8E6hrhG7Pl1P7QaxHIetQhgCguaPTBOn\nKP2UEMatXi637bRtdlc/3tfS816CByt8Vb728r7Z9wE4ykCRuh2GOy6uzwV1\no5DfeQRLxP3Y6MRNoy+R7ps9mcgqimQE0Inph75kL6/2svZ2jVmbGdOyrz1x\nhLAbyDSW9X4OHrw9w0Z81csoCsn5cbzP1Dfqiq5X9PhGGHh5u+IzDgLC9SMf\ntaAQGCMDfwqrrTc85ejyZJU/IKOE9g6EZT3MaxUf3KJbRTtCueGtU8Cer7YI\n1fwOsCsyIWxSTLfrxlocDLr1cuWMeI3AueOLHcWN5FC1N1+V7vJkkpHDFej5\nSJCKKMmxY+hjiUtQXJo4y8YXzlnkY0FzJ+h32cEQg1bqC3meaj4GlH5kK3c2\n6+VjA0EL1u8vhUH+zx8kt+flLx00dBtqVjY+IxOu3wfkJk5B+O1VtBlsMem/\nwceFQ1Na7Re+o1LCntIzf7bpC3eQFu9zlW4sauXqaKtPUPyOnEpXdsUYdoMu\ndG3i\r\n=LgHe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF2I6JSedFOlBbKU5M3w8doSpxxfWqn9CBsfxJFfXn3VAiEA0Sib7jF61IH+v46RPuUGnRjhs4Xd9X2wWAl1DTAAcWM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.72fd3088_1534187874594_0.2761589200416221"},"_hasShrinkwrap":false},"2.2.0-alpha.bc38dc6e":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.bc38dc6e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.bc38dc6e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bc38dc6e","@crave/farmblocks-hoc-input":"^4.1.0-alpha.bc38dc6e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.bc38dc6e","@crave/farmblocks-theme":"^1.7.0-alpha.bc38dc6e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.bc38dc6e","dist":{"shasum":"62d0a42b3484bd529567d8d10cb8528eba98f500","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.bc38dc6e.tgz","integrity":"sha512-kelJN7itliMn4+/1m2C1iJO9XJKoAyQU7/qeqS6L5Wnwv/MrBHVfR+DLSo3pEglgBphraH6vnLPV4XkKN35L5g==","fileCount":12,"unpackedSize":48032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbceGrCRA9TVsSAnZWagAAKZoP/jfaHW4nBH5IlAVyIQ1E\ny6HtOrNNmtmGPlncwZDPlAv79rgZ6LxLI8o/YFAvhJ+ZiPZ3vASghELyTTaZ\nBW9uPSdkM4E568uYdBGb5RGX6unaR3kkNPe2jEbjAshGWNh82e+M5QWZ1R2t\n6jCEaHp9/xC8c8Ya66wNNpUo8nNaM61eGc2uSRGFFTbiTP1iRWKkDTw/1KAZ\na97Q5nIeYC+qM/hM5ab2zXXB2sK2uiwyiK7kmh+SMcM6E1ni5psc+t2N+t91\npSzPEcZkxG90RqvKyLYZw1eGR28h7NrKcO9MUc32OkbHLmQPtESjjG/X/lmR\nR2FxIZ6QIB8TZ+n8M5ZF7zsCXK8bCcAVXSYU6K4f6WpVVgItFCRSae5gVRX6\nghtBefhbi8q/TCLm+2EyYuvxPO4/bA/ZstmGwDVRijUmg7vDym0XfairqI6q\nng2lM7qtS7nFGraBOlquteS/W+FRzGOF2XctPeqr8A+eRGGrNXFKDlh2wncq\nWJQ754pXMnH8nCQjaL5n9uL89luq5sfzAP76hMRKmL/57BXoEEk68JVls5MI\n+MDJLL7+MJffa75uI8/RsDiUi4rBDg8SIiz1i5Vz97YFEh5QyroguncHebVI\nnJpouvPm9LVYUyr0LgwZOxnuR7ex2NDeLM69BGlrYskwoCy48nP8fgnL2m5Y\nLtk8\r\n=0Wwy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA4yqvT3H5DKtwUeY4hEF4MrdCWaSPjgC5JLKn7C0DLcAiAXK5sK/z6HYYMgjDXEQV1QQDIVGTVZnrr/Yu8QN/N1fw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.bc38dc6e_1534189994668_0.020784039354764028"},"_hasShrinkwrap":false},"2.2.0-alpha.f2d16cfb":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.f2d16cfb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.f2d16cfb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f2d16cfb","@crave/farmblocks-hoc-input":"^4.1.0-alpha.f2d16cfb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.f2d16cfb","@crave/farmblocks-theme":"^1.7.0-alpha.f2d16cfb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n| tooltipText          | string           | the tooltip text is displayed on mouseover for the disabled field, use this property if you need to change the default text                                                                                                                                           |         |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.f2d16cfb","dist":{"shasum":"baed8a07b21c7b31229c7b26f82ce7dad5ba6140","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.f2d16cfb.tgz","integrity":"sha512-4GZpa8B5rR1RTnZQcjHVuGh/lt2qBiInAazn5cuCTsXWmwv0+u5XziP43gt8nl61whvFD9AEVp5g+GeYv2FDWg==","fileCount":12,"unpackedSize":48032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcfZcCRA9TVsSAnZWagAAFP8P/2N7U90jYqWc6PhZMTJV\nQpJv/0WzxLOBlkVM5b/Mr3Y1EmZYJTOhOxqbbq57z/L09EXcZXsbslNb9RMi\nDcQGG5VKgiGkljSpwOo3Q6n4yInEJFyaFeP60GO5Bzw3KxOjqg2wu7q9zF4z\neBfIqAx48WkVUw2UD5R2VdJMgDQDPcH4NFaeLYfH+9sZ8P2F1fUwev2iZc0S\nvbYazwnsYpLaqbs2AIgPxYxKZIAgHfImqJWjYankbNhr7D2z1xNaR1rDqOF4\n8dJ/A+OCQWAptjBmEyXWzX/ZExcPwGAhKjVMdAKCkAPfmIhV/c1Dv+5ozlTy\nd4FNfRdMotyHBilTkvPp32dX+H/wbsoO7Ms/hcYXDD5fo/3O0HwIbUALhZLl\nzIcGqcaFhnPGqFJKhshfC8d/+H9UXnOsT+6r6IoEcBfmAgpvy5yimloJWFE0\nW2Vd3GMN1B41gIMfLwtzeVYE2Pqy//Eq1snSaLP2lWdS45g0GtHd+B5VRQus\ncIXsz4gne5xYeUr5k4qktYBtvEI8zZZBpNFd6sHcZJmoDEftCjhQe41v//Rm\nniOpChB+qrS6fMaFbUBOf1seBqiQQrmyZg2/AtfKCQ/2ORSKkGqZgfvXONSX\nVARDy3j1L8cfYnZyblgjtKAdlVbFqPJh6E5Nq21UJIUJe51vIdjtiexqvwsA\nWxpA\r\n=2ZqZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzitRSngmu5xqKBk95imQ701fFtb6khbtHjJ7CVdExIQIgE9kcB+yHCCcIddNiJPhJe8pOtMnBktOLOVZYrpzRC8U="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.f2d16cfb_1534195291141_0.52022713802431"},"_hasShrinkwrap":false},"2.2.0-alpha.3b6a29ec":{"name":"@crave/farmblocks-input-text","version":"2.2.0-alpha.3b6a29ec","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^4.1.0-alpha.3b6a29ec","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3b6a29ec","@crave/farmblocks-hoc-input":"^4.1.0-alpha.3b6a29ec","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.3b6a29ec","@crave/farmblocks-theme":"^1.7.0-alpha.3b6a29ec","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@2.2.0-alpha.3b6a29ec","dist":{"shasum":"3baedda2ab07d2e7baac91216efb94202c33c783","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-2.2.0-alpha.3b6a29ec.tgz","integrity":"sha512-6mCcB33++opm36kfDttIzrQq8cZnguksUqPH1rAQn9fr1WGdrAfWViUaT8blsNUqNuqC/G+03/M+WcYOVdFAiA==","fileCount":12,"unpackedSize":47566,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcf5tCRA9TVsSAnZWagAAzv0P/0OAcyJXW1okODR+A0sd\nBSUyvPrAjUwQsoHmo1bigDZmpQD6jkVhXmclRswF4TBbuRfuHKk+sNnU3oD9\n88YUSU2McVkoGo/2/JwvscJQWfa1MNgm0VeN+E38cdz5NGnVipZoVkLgAWaX\nAnNviVk/izOa5Q8XOEfKW4PBw8uQgy3ewFnz3prCwRB7oe7I05Lf7ddSkiOI\npJHwk5KDJkbvsaaXLwS5/irRiWfo5zfQZiQ9IWGGk+rZ/HpYT9MA15v4O4Kh\n6YXdGeGXjL8nIDlzt8S72RVDFYGpr4M+sy5KlMVclfYoK6Fny0GaEsxJT//c\nqLs3z0NR9GM52nQmxY8Lz3yGMPgxxbGbPeH2PrK6SaHiRVRj6AONQEqkyQpr\n0XQEOeGmBdDBpEOxUGn5che2jII0aSHh/gOiITplHZ0K/8XeqV/Ts4DPJgoh\nVsyyEmTTUfo337cSQ9BMCBpgLe++XSKyb26a2jDRA8EJYs1FTs11sqXyc0FJ\nJPUWG8gRfmuR2wQylaAqXxkAd/cNIMSrKMWwV9sz8NbKOVVR0KjBVAmgJYME\np+xx7YqX50TdXYFgsRvTw6pRPUO50WIWY4E4K9XJAKPTUPYQGmtkA/1Fl1CU\naGa32/71evyqTFwRzp229+zVkvgNKMFn/48mMBQgIDtoipo2YidsjIQbGIFu\nVB6i\r\n=tUb6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcVI+t2xY2kFwDTTzIsxQk3DP0xoMrX+4Qbm12qdT6AAIgMm1PLylPohuPNuAQOOTxkChVkT0V4kwGyW6UgEMxljY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_2.2.0-alpha.3b6a29ec_1534197356520_0.25818106495706195"},"_hasShrinkwrap":false},"3.0.0":{"name":"@crave/farmblocks-input-text","version":"3.0.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.0.1","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.0.0","dist":{"shasum":"bbf05d8f9375baa737f51547c92cf69c8bc669af","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.0.0.tgz","integrity":"sha512-3+7qgg1bIEPgnHuNrXKGtqysHtErdkWeITvk+wf4rn2Z0/koY525egcQGRtNHdA7sOBN9+vqSaaKfwaHuZQkFA==","fileCount":12,"unpackedSize":47431,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcgE4CRA9TVsSAnZWagAAOxsP/1miAGXVeorMEKrwdiF5\nu+bRZRthZWiVxjymkNe/3yvUQwJks6bQRUD12jA+1krXDpyy1hXLnO25Q40p\nfEzMrofZv10QN5WuvuFyRY0a2zI2eljyAviucsFVBJxO1SCLDBWAy5+q/mt9\nvCmIBHguUfIBuOZIhIKr4i8TLo04PA9NaZermqGGbUboqYufby4yFgTLoGpd\nDvktZdsHG0epPgcyU0lD9UIau2eIqcWaZ4/fQ/Jt1gs2e5eahcCVi2Xf/eor\n+p6Otov+g498U/mNW8EArJqYRcJHqnSEMQxG64hbg6xJRD6fhyiq7RtibZWT\nE+lk4aJ9HlNFYg+lrYeIoA2rHZS/isPuUqiltEK2g/Zw0kuepalcjzWRZrLF\nuAxLMDdJ4hj3B7FkVk7jzZaQsr5WImPxsE/FPh4tyYPxC+S4P0motb1fVOcj\nWnHvedIoNHWaVOygahyzZSSuuiWDSAOFkwPw46vPLvsU8r98QxlU+fBtZJmw\n7/GsYfq4FSiQFLo1fpSAiugYkGwx7LQHKtJwvT1AQ8leusLKYDEwOitgj8jq\n4sJND35HAiUW+DGkv9qfa4AiRkxBwK2gG/L3RYYQNn4LC+hqj3OjlHAo4gdo\nx6zLbZFFIj2wkuUGlNHHBX0nNnG8MaYS2G+62jxBqNcV9M03OFTCD0DMl4ag\nUPtm\r\n=Ckws\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBs9GIFa6rZ/KTEsjATuH2Qv1c9shwUw1aFRTjQ9KJEYAiEAiYPHkDZxvMMCXn2uoQ56YynxYc6aFDBcWpXKHruTRfk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.0.0_1534198071722_0.3695350052800763"},"_hasShrinkwrap":false},"3.1.0-alpha.5f64fe94":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.5f64fe94","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.5f64fe94","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5f64fe94","@crave/farmblocks-hoc-input":"^4.1.0-alpha.5f64fe94","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.5f64fe94","@crave/farmblocks-theme":"^1.7.0-alpha.5f64fe94","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.5f64fe94","dist":{"shasum":"385b861240c89c0c1bd922f67daf26962960770a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.5f64fe94.tgz","integrity":"sha512-tY3je+ARuulSAbq8zTUcAEkMQrctoJMflyRCbap/MC68J5BbaHIw/b5tBi8oxHL86tV+UtQYgSqnuucT7MAC1w==","fileCount":12,"unpackedSize":47805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcsGpCRA9TVsSAnZWagAAsssP/3bt52g68IblWV9SI8wF\nJCUc/vvXz9TgvzqcMpTN0DVL9GDNspFieU+Xksua8zZBLJWjFYQqTBOuPA9k\n6ZamNLwNZzpqA6M4/BYd+DKc/AuyGgGHWVysEoxYpQ8Asxmc5N8KCIEmGdMa\n4I2WZgF6wi7FfWO/L4ycdOKmDhpr49G+G79JrOyQPQLB+73RbKTHvnI432a/\noKa/zHwkpefjfSgrSLBDMKAin8IQgo0on+CTbdz+9YsozkfSeB93BKD/QqFa\nXrSgO+9LDV6rd6sIjGb3a5xAvndNpbzMI2dhmGf/BWYjGn4F+XvLBB5rbE5G\nCpHDveFDXDMF+LR3EbBL2nPX8X0d1atXNIbfqACbYy/s+ZQYrzkMSVk4i2R2\nZ4N9a1FJd8KhAICx7XwBfjD3WJoDmVUg31cigmnX3FP31eS/MkUlJQrJfjQO\nUKOMT7+2O3xK7xjZW1i4KytMubmw5pHeDWdyapFfoi6PYq9VLCnahqK86KWX\naM0K9nBd2q1UkHmepuESU3y8jnFQAUicMYRK6yB2gQMnpeKmTVmjdxFPu3dz\nPkxzWpoIXXYY5MduC7gmS2h78bNKzWIgyaL3MckkTN+xiSbXf1bzLjXFKOJ8\nwMK2LohCNeqrYscZqeYJ82ITJSGRziw62GasMzaZVYD+1QROZrhgifWpQwcf\nA/4Q\r\n=mlQM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFUVI8xRg0o0mRLexK+IX7IRjt1jCc9V6fCQP8ivTnZSAiBjGrhZD1zYEP0jSYKIyLbuN4r1lb6IxdBk6PjgVy2vIQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.5f64fe94_1534247337148_0.7848395438350342"},"_hasShrinkwrap":false},"3.1.0-alpha.6dd0a593":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.6dd0a593","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.6dd0a593","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6dd0a593","@crave/farmblocks-hoc-input":"^4.1.0-alpha.6dd0a593","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6dd0a593","@crave/farmblocks-theme":"^1.7.0-alpha.6dd0a593","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.6dd0a593","dist":{"shasum":"486a90691428a1e3650eda56f0dcf08987ee6e52","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.6dd0a593.tgz","integrity":"sha512-5R7xymU2/suXuj6VXJEBh5EunG6mypuCIwA+Ab3kAszCV7VoiLp5N6GvUB8ZpTikOd1kaOuABeL8Rc+P7ZU0hQ==","fileCount":12,"unpackedSize":47805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcsQgCRA9TVsSAnZWagAA1jMP/RlxhrVn/b8y3sWBLjXG\ndQzsmUK84d4VnAjkBPqgH1s44MCGEzrk5cMMiO7lGuzKh8rZyZfmDAGEnk6p\ncPQDo0cy7umxhFD3avEZxUeOBYDEyMQmynmGU4STGTMNMgCLyztymRzbdS+x\nhLLkplM/lMc4aMmsOMdS30HLHMycs37ydemnKSImj6aVi6wiK5Kcs5VOXf4F\nJ8aKSq+a871Lquzoh+gPUYoE5J53XXRgRW0EW/kiM4GD5gKLmAQHXi9AUTHp\nG1ZLLw+7jktXXos+U+DzQcVeLa3WkGNkcRVeuRNxA6LDQ1c0O9zNuddXd/9O\nEC7n7Uq3EdLmo/V99nhVo2Oe/5HLHxpO7bG4K4H2t/uPjzbfkYCDhe0xsknI\nwCZ4g4fEIyCMInXyNdJVtVg3oHSmvsph2KxXnSUICkK5sdOp6QHF32DHcF4z\nZOPw7/5gF52qS4U8vcuaXaLWulVbTNvFzNaOPScWWvGs+ZEVoxFjhPkqgLdB\n2noiZu4DMODyyOrBKdLo9GCSu5/ncF1q8fpfBKLMmPyRA4yNBHH1ebehFeKI\njRrW1c9+GsrA6cw4pFQYvOsEHy9LBttuXcps1Ou0H+rDc0Tie12bBrzGzENJ\nbj2+CxQBRF50ptivoszgVN3sGMldPEwWpPSlIYOnBK/CTSRyDdm0vk8ozHSY\nmXcC\r\n=fYZc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBK++gFrHEe5z3pKYo32e95B63nYBZPdf2lw1OIKIlsNAiAv58ku//BNriqfgaOnDoabN4KYmMXrLr37OOhn8QDTZQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.6dd0a593_1534247968164_0.43100956337502483"},"_hasShrinkwrap":false},"3.1.0-alpha.75675ae6":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.75675ae6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.75675ae6","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.75675ae6","@crave/farmblocks-hoc-input":"^4.1.0-alpha.75675ae6","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.75675ae6","@crave/farmblocks-theme":"^1.7.0-alpha.75675ae6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.75675ae6","dist":{"shasum":"a2925dbbc2aeaa1d9d3a30c8aebb8f0f25d87702","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.75675ae6.tgz","integrity":"sha512-je1W+gPzhsd5KBCKkhx+EUV4B2hM5SgL830W/sbfYJY+JHuxpusHceJVn4l7hO3pN4yneppjI7L4ATpMdz6f5A==","fileCount":12,"unpackedSize":47805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcuG/CRA9TVsSAnZWagAAQuoP/RBz3GHlu0PRMPiIdY/r\noZiUqkxwhUYbqGnfcNpLUMjEtFM9lrsTQaqBb9NW5XJrqGwXA0w5XT5ypfvy\nQo1ce4epgS0QJL3mDmTWCWsV5DI3/nKnyfDqsSlDurLuyye3tldHff0dtIZ1\nJEYgSIbtz1bX2Uwz4rXJkvOBjW/jfoNfvZqfbrcOy/dr/EBb8Wx6Qa8qk8vZ\n5DoVnCdVVuEMGv+Jn+efHw1PHIFqp/urwhvKlCMBpMtx6Bl6uBk+BdwxqXcn\n3puwF8GhWhWgSZFNsV3HvQIeMbEekdMEPAK/pTTrEhjY+dYh3A3vn89r5/x+\nB/lzQ8bUgK+ZZF2wKIUvD0WzvrAtLtkZpjs3oLlRzXQIEjWDxBD73/la0Wyn\nAryrWW6P2sgLxvuatLFSVzL0+bY2tqMn4g57hqgc0aujkMy04WtAaF8+hrsj\nasUWQDrLo/bZGAbSuVbi3QeJXfjagMTOgwah3aTS2nFCfhOpwl8m021f9fG2\nLuGg3TvZJdMh4at7fjQYwUUuWHWSNIJj11GNdNon5q8r9IGMdLhSpdlUp82F\nZX86gxlzxZ4cu7P5saGBXgEG2N4Th3GqCtoRugRndhQWTj57UJjNSIwX969Z\nVJ60iNoEVlJIU697l7Hn6xcHqXjqZp4y3wloWUWTMbHk6NMq5QArBVC7SV/c\n4edV\r\n=Hhpb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFk/bwxyxwEaJ0ytHwR7NzzUVyPqsFBlgkyj+C3duR5+AiEA29AeZDC7fiqanqcTEZ8EKl0YoVaGGTVdbIa1Z/NI0UU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.75675ae6_1534255548373_0.8840189798490796"},"_hasShrinkwrap":false},"3.1.0-alpha.c9f160dc":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.c9f160dc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.c9f160dc","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c9f160dc","@crave/farmblocks-hoc-input":"^4.1.0-alpha.c9f160dc","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c9f160dc","@crave/farmblocks-theme":"^1.7.0-alpha.c9f160dc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.c9f160dc","dist":{"shasum":"410e409358d79c557e6a7a4abc5eb9b3670e377c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.c9f160dc.tgz","integrity":"sha512-GJp2C+2tOyjLosOgVElu/7zCIZONf4qMQ8ttxskzLU5KgbKQphlmBNuXYx6XKDf1joGxtbrycdL5H69/Ttg2Og==","fileCount":12,"unpackedSize":47805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcuQWCRA9TVsSAnZWagAAEo4P/3lsd3CNYy53JJu2Fwta\nYCz1o7Xo8mJdvPC+HsaXWEE24ipQosWvBs5Y34J9wbjca3qT32UsewlJA7me\nzZIOSbF8G6eCxyWxBK0b1Hji1fIBPuaGFLzQhTsYADA5g8UqVdFxnSbzLBD0\nCwzMUHZWBNmgNuqHQnzehKlapeIuhX8BOmxBz9yFXWF9GiUrWTyf92mg9dck\nh4QnDQ3e8zTBPvhAuKJ6K+79I59jzUa9VejyeDJmiG+V4UWnJlJfmsqGREfM\nOeT3YvXb4Rg99u+a9GXMO0u5cWiICSuSRM6aRYmwRip8SJw6VsPpSwTAyWDW\nyyzWiBSvp9wzBxnAbmT91OBQr2wvR9DMNlMh0qxx3/C4tuvPlIuiV33u1T1D\nrwJJvhu9y7ArJ6dO9WLhM4D1JN83h6TzswfH+STyPoSZbdbYzecg2p+3Eo2O\nuwbgKSssC9HDk3auPyzUaGMstk5LhQ9M1P6NJxOUbagLcCFVcTdcqvExLo9T\nsOBZWjRiZYg6D/VH2vgY7Glgjt1065xt/B+S+rlvFteRs+epB+Er+H5Db1K5\ntXwoDQebsbDObSA07LPbeT3kCLKzZHyzXFZTlCBc7IC7MsFEVjqH55C4IAVV\ne2TdKW5LZOXYzTJnrmvrhRnh1debLj6iYlVRPBUiP91ABF0arQg7IEyqZNXV\nT60s\r\n=NNK9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICt0abqW1xgsaKVJ28Hm60IRJrHArVT5hZNvWZP1cAfaAiAEM6BGLwEudKQw58t9We5knPzlKIjFeuGHqvVPcUBWHg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.c9f160dc_1534256149970_0.44152583825280933"},"_hasShrinkwrap":false},"3.1.0-alpha.afd12c34":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.afd12c34","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.afd12c34","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.afd12c34","@crave/farmblocks-hoc-input":"^4.1.0-alpha.afd12c34","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.afd12c34","@crave/farmblocks-theme":"^1.7.0-alpha.afd12c34","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.afd12c34","dist":{"shasum":"0efc31b8a19332e9addc833311ec4a399e4ef1e3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.afd12c34.tgz","integrity":"sha512-26U+KPBSTLzrn4TCSCG75kHlh6ScQK41PYlXEvv2MVX1YyLl88mIZA7hmDcY8AgRDnxFnMH0CPotrNU5pfr3RA==","fileCount":12,"unpackedSize":47805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcvdQCRA9TVsSAnZWagAAoKIP/jC8vzoTfjbUNbI5TGvF\neRY6oZ3J11dfa6z7PNFsQ2Qb32/wV2oUCNz2TE1CtsyM4DSu+r9AeYapZEOP\nNekUJMrzqrngW/27ZEmSsfy56qaqWWRlnDusHHJyS1ZVKjQf7ivjHNJKBu2Y\noQwHii53o1Hhq6BOiQUCl6dTgnZD6dK+2oVAWFGDxtsZq23rs2W9hKrLukt5\nQVTGxplzr2tf2U6EZfq8ZIQrA1uNw9adcmU3BQjOS8SSQEPMlCsVxF9jsGPR\nCFOtUNjhIbyPIEQhXjLN+fFm9LskKIHUn9zVEdltDH18C1ZOY6XOwnyQqMkO\n94WWEucwllf5HZjlvZ7qrz3GdkAObz067p0IlyPBiRvu4Lk9o7DMDE+g2ZES\nWbpjJIca/Iu5MiFvzDTOZU/6qYScsbcf1u85z1gQ9o/GFAoB/WMlAhyhoMYn\nlebAIPUcXqjl7GQTvOca15KVwOcYC3iQugDY1Gdgil8JarF2SoVGL5GST/F1\nFtvvsv0pDkvcFKkWYHlw/o0aV8bT8n8QTIxsXailEuCAl0JM9yp19LoU7zZc\nMqvBWuP7yCe1WfpvxHHZK2rM+Lk4Mjq9pey3zusdf5OCqscQ+26varzLNFeA\nSG51alTR3UExxBp04OKq2jW0li3s3iLhEZtGTBas2f3UmSkg3WVV0qv1imU8\nsjjx\r\n=7T7j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmjWA8DOjOJZTaTimqH85ddNMrdKnm6a8yaXrwO2HStQIhAJFg0eCibHdYxds7fneBun+IdSdZBzfbY8+D9zYWP5jN"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.afd12c34_1534261071537_0.5825245491996742"},"_hasShrinkwrap":false},"3.0.1":{"name":"@crave/farmblocks-input-text","version":"3.0.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.0.2","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.0.1","dist":{"shasum":"fb02f49287c87bca8e1a674a0098f3264b58a279","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.0.1.tgz","integrity":"sha512-scUD27O7SWtY6ISs9IURKuf4uNMs049GutbULt7Fhcr9c6p5//j8QJ1OnI/A/1dDNGzylI/XK0ACDKw7bj6MmA==","fileCount":12,"unpackedSize":47671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcxdFCRA9TVsSAnZWagAAAQUP/iNnOBjHu34BqYA7ajyH\n0KJMtHGq1cVP7myKWIq5ZUePm4TpdxOX/+HtBIji3ZHiOtwcJnSTu52inlwA\nE0mAkusaXUx8qD/QGS5G5dUDWnwam+REbpGu9f2p1VfPc7wpBP27bvcapMgU\n627CT+BMgvJUESmMHRR2kM/525lvYCQS+8DNYNKDuRYYjaTe8e1HnAR2Wv4I\nIi7WC2xDdbIApGVHrJEP3vsHqmN8Ol38gxMxs8KJc/e9/AbeLAQLvSmXgwdY\npwQOsptiI2Rr/bRj6GMKYQxnseXNs5VLP6mQxK0mPP+q5RFmCTveFajXI3GM\ni/l3REoziHIJD7GKhEWgkCbDrjkl1IQwa4Y6FYzYQDh+/f1WsUy7Z7xnekOb\nqkE4vwVZPEfd2eNp+NjgeGeLjm4d5BPLq2uX/3/0HM1oND272AYNHO0coWiH\nv8kuTWZO0aN1g8cd5M+nv6dRj/7VyqkBQ6MITTrQbpxpThrilv5K7exz07CO\n/9nXZLYLoadaCDfXqyKctBTuTOLa1UNXHQbNpwAfnx/Ai84fkNoM2Y6jQIwR\noFXubju3nYz/dhSQbPpYZoFuGxO6Gb3MHidjJxUJmb5Zaq+t+wszGHtAYHw4\nXcsl+un1WVI/X9cKq4m+44ISPZ5fMZA4NAAQyycMMdrF9IIpQKYlVy+dehyv\nEdgb\r\n=D7Ld\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA0RtpR3JWmyjZ3cYSGPxLtG7yuuSBx7PG1fnxCaXL3DAiA/PRrZZdpJ19KyOBB8RBszFXPXqXu3o5OO+suehQhIKA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.0.1_1534269252609_0.044608969428373335"},"_hasShrinkwrap":false},"3.1.0-alpha.b913f91e":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.b913f91e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.b913f91e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b913f91e","@crave/farmblocks-hoc-input":"^4.1.0-alpha.b913f91e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.b913f91e","@crave/farmblocks-theme":"^1.7.0-alpha.b913f91e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.b913f91e","dist":{"shasum":"f8c0bd2a5da3b4fa06dc640ce642ddcbe7143fa3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.b913f91e.tgz","integrity":"sha512-nNScb/MjKwF8HhvaOoSOc3NW9sT9+EBWyHHCmkxQK3zxgAZvZaEGv6DPlxPEz+UkiCkUghnktmDDuUThHSHCWg==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbc4xhCRA9TVsSAnZWagAA4r0QAIUjpLONu/gpeW/j25N2\ne345vHyBOReCy8Npt8TnXkakPCiFaE3UMAI1tSf6ILSNMWWUoX7OecJMzBgS\nrlicTwyhImmKX4qkSRU8+n+wOunh32RxYvGX/dCqwrU6sCqAQ/8/quuIKfip\nSCTVFlUccHB/3YJEwRm/3c7i+u9RdR1fvH2m1C0ui3Bobpu4whCbRn6wJyHh\nSJUJX6sdCorAJKrM9ptVKmyynOxSzT/h8JUVank374c66McxLgyaAUYHk1f6\n7hh62rhxO/o8Lit53XMdczF5P8mscJkvR69wLE2qGJtT24GLvGHcRh4mBexz\n/Avub3UBug24dEtKsJzZURlV3m4WNIUdtuyEA/I5ZqBj1kzeFdrrYa1zivK4\nqIX2nBhqdLTy2Ctzz5MGVkrECaZHo0m4OB5l695XFWMKoHtxq8soLDLExzAm\nbmSAb3cocFxYm0UN46vpfwT9w9o8tDfeAIi6cmlN4zFd+Ijal87mRwryBnBR\na9vB4zinVKt6V0X1n/JNFem36qWnDYdwktZ5ejU7YpL6In/GEhx0W4HPle6S\n9AS/2SSa+XUWz2ssynUvhPHHbt3KFsUrimTxCNtVJbX9k310WN7BPSwmBkAU\nYvY2Uy3uDQVsaEjS8EblptWASHY2tabJSAQPRoTJEr1kKrlvQuaLQRJeTNGv\nfsB5\r\n=5KwI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBCfPYOJv2RvhVePNOd+NBvbsF8/eTkUquDFa3Q7fbTKAiEAnLxTX4cmj0Nx14x4JBsjE0PbjDGpiBhKETg3YvGEFqQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.b913f91e_1534299233635_0.5094494545142225"},"_hasShrinkwrap":false},"3.1.0-alpha.b89848e2":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.b89848e2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.b89848e2","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b89848e2","@crave/farmblocks-hoc-input":"^4.1.0-alpha.b89848e2","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.b89848e2","@crave/farmblocks-theme":"^1.7.0-alpha.b89848e2","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.b89848e2","dist":{"shasum":"fc445fe0a4d533f492351e6d8dd9f043dfd4c9d3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.b89848e2.tgz","integrity":"sha512-V9bB2lavrhzioUJwaC8ev95Em8ifgBMXwso9+AABxiytcRZhf2gxCb6Oz8JMI4djArAFKQGH5uEdInn9a+4qWw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdC+ECRA9TVsSAnZWagAAtugP/iFq12zpZx5mwa97+YBB\nEm+7c4uKXL04nfallZb5ErVrluHYssgdhpqaPYOHgQQXPSOMhTuOf/g+QGYo\nvgdj/pBYjnHP1Iu6fEDKcuVZweQE+3hVGp6Dtz9QyRl+kNQvdGdqnaqdoP3B\nlfYXqVnkw5TMR/FtYMcYc9y6tFv4lpus49SbagPZcJysN8fsh+yYtoAYbD+j\nz/IU8ffmpa5wsqOsIndy34I8/eCEwSagnaJjZ7ETRf1OMXfHkiPtrocOTYTB\neCmaWadsayswsS1JM5ciRqB6A3wEvWaEIyIUQFarQxeLLzxOYwHbX99vX/5R\nIhJ1RrdaTJagjVs+vvkngtINuu0CMrtapSD/7KqlzeskrfmwR1BExLD4tjJT\nI3fwwAmmeybFlwQWhvAxIYabskmSDrvjAHcXZOuVbKvsZEo1YDWIOwyCf8/L\nO7P2ctI4Z4EYlGb4jEygeylkBIW9Uk3EkOkDNufwUWtmJpxh2kYYD+vMfCjI\nScFWi+oolDMFHnhTDhPeOziaNiVuCbMEERgqG8nqeE41yM6aT1t9hf/sifiu\nN0P9lomfYrJnH2vqZJuEwUa7FchnNzq+hlFIOmeG8DvHtv4WM5btrbx9BKkN\nqbajtmiS/Qo8JBhrrX4WBRgusb3iSJK9YjN2taFK6Ax03xFt22fK0UFJLDps\n2wAA\r\n=N42B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFbvWZWAsBllB9/Y7vyUv8PGtEwpMfe/MF3FZxnVH3fRAiBXlZue7eVax8AgSwlm4Q+YpcIz7uoYHZcjLx7thQinYw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.b89848e2_1534340996405_0.36494736716856835"},"_hasShrinkwrap":false},"3.1.0-alpha.5d972c8b":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.5d972c8b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.5d972c8b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5d972c8b","@crave/farmblocks-hoc-input":"^4.1.0-alpha.5d972c8b","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.5d972c8b","@crave/farmblocks-theme":"^1.7.0-alpha.5d972c8b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.5d972c8b","dist":{"shasum":"2a764ad20e6553528f3e1487ae5a59acfde7b08f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.5d972c8b.tgz","integrity":"sha512-hRZ7HjsWTtDStKoneGOvP62v4T5/zZkH4KS2UIS976GPKFc4WkwUGx0OLx9SkSlRkKnwqzcsUMINyxavs9GmBQ==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdDBCCRA9TVsSAnZWagAAdzYQAI/MZjpaw9KHJBCz/FX+\nNABA00a5MvEm/PE02dXrklpUeKUm+KmDS0RuZ9qOjEux/AzWPgFy0xsjfQYs\nwdEkTGsICOFHgpLcaUJmL3uHKePiVfkE1HISSzylj3bxDqv3gOyJ9C2j0oCK\nhYVphAl0CjK8Qhfq8n6cO02h+bGoazAY3O4djGJiYtn2SHJp+0PlTveV0xGv\n5G4MvKK7OdD0ffymRlFcVTpY8p3t3/yfD/r9YaCn9yqKl/5MdjXY4eqQl9fz\nKudi7XS63h9ucALKAF+y5IWZaKgLPlm4ll0HYaIzTOP6D3/PrJcVQS/CE1lz\nkHp2EIUY+SrYKRY8bfHSkgCvDjcyaLsOLblnMwbTQL9gZapudUlZPDJjUd6f\n9R0rr3nF2FsmR8WNwnBuxhK3x0AlaCTnAj3BFFQvKlwS2l7XRxCzuHajKHRA\npRJ9OTiUUI/+idH16j1hnInFY3laY6L/D6u9QBAwFaMB6SbXAwS+WcrMMCjK\nJ2YaU2Lv0eKmAvyBkkfarHi65NVL8sqMhZ9Gh4/FTnbeoyyLmdEUgXlM1XMs\nUud593NvHAo4PebWU/cvpA6afphVIz/whiDtWcpT+XHGCMNIoXj4KIGi3FDN\nJ8ES2psZqtvnU9ZRpIeIh4YWmKZ6dYJ/fCmrkOE2QSXnmBv0qstyUly4B1Lt\nqeDl\r\n=iXhr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCl/Mja6C2tAixSYj/3+CVGYy6gaPehHcEW+ZShsBUtkAIgUdKMMLWebFlNaOteE0YipTGRQ8aq208QfZ7h2faMltA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.5d972c8b_1534341186345_0.09045159996497776"},"_hasShrinkwrap":false},"3.1.0-alpha.6e3e5000":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.6e3e5000","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.6e3e5000","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6e3e5000","@crave/farmblocks-hoc-input":"^4.1.0-alpha.6e3e5000","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6e3e5000","@crave/farmblocks-theme":"^1.7.0-alpha.6e3e5000","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.6e3e5000","dist":{"shasum":"94649790bd6b43748cc0800e9d9e98e704bd329b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.6e3e5000.tgz","integrity":"sha512-aa10p03goBsA+I7XP62o5eXrkLQnsAIzPmGcMag1iVWzeroRM0xdwtQsFwaAMvJ0mZ5qJvW/uTrFoZ9aD8mMYw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdDYoCRA9TVsSAnZWagAAQ4sP/jFs+jhZfLqPanT1clda\n92cFfncca19QHgTaMBkLek8Md8Gl7QwnbNlaxgmIumafbUdwK8J+uDgbwMxY\nGAAnS3HFNFznQ0VOF6tNVew0xIt26uREd3OGNUejVeiDz0j92EOvFZg7EFg1\n+bGndYijU5kV6Em5MMp8LE81c1ZPDCvkXRXS4rBslI1ySeWWwSZwR60PsCsj\n10XvAL4Tcam0M1loi3RxSTlVTFD03dB5O9qm9E5g4+qQq8S4fJ6Z+2/fqfRg\nSO1ehqkPYRzVLiNidpJ7b8vO9u4fYYlyhUwZJBPZIiya3AoWPCc4wSu/WK47\nNQN5hTND9MN5Lu6xt62w8kc7O+fHmQrtDYPRlrFiWftrdbwLtDo04Zj6G20L\nTaLFclBOOqgCAW0p+vatNRUABQibLcMp7651Bj+nhzOFcfkvjuK0HrOLutQc\nXPHlocK9Y2FzBGA6RWbvJG5S+WuviCcw/yIVZMcF8+jlnXbKeejn+KTpJAYB\nzXo0rMMOdmsnMcmqCTHGPfYZepj36Clwxi84DfYuzROsd6Pauzs0aeSuaGTG\nLspEM3zcStypxdt/K0RK8w45A7Me0cnyhhBehRVFDr7OZodCZonaM4TtG05P\nruPQ86xXsjpsipfg7GhQ7q7JXYifr9FBU5jlbZzA6ysFX9/Nl0MWAOE+fPIP\ncUW2\r\n=msEI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAvV74WfZwPTkkCMS2a5Vzy4Isab96lYc0ULEuodfzcCAiAnYMphz8ZHl9g7iTBwlmiuPgCg8cbnDB9cSdXcQ93uzg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.6e3e5000_1534342696248_0.4033353970463167"},"_hasShrinkwrap":false},"3.1.0-alpha.1cf66a07":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.1cf66a07","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.1cf66a07","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1cf66a07","@crave/farmblocks-hoc-input":"^4.1.0-alpha.1cf66a07","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.1cf66a07","@crave/farmblocks-theme":"^1.7.0-alpha.1cf66a07","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.1cf66a07","dist":{"shasum":"508cc6fcc8864dc430858fc950eff25abc0bb9a6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.1cf66a07.tgz","integrity":"sha512-rgtoDasePiF9JQevapeRurhw6tQ/r41tC/3i7J2ndXTv2+9yNRvv4KQMJN52Bvs1nQz0g9bwYWw4ne8EQPqpnA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdEwuCRA9TVsSAnZWagAA88cP/1AiSEhFhxBBFgOdTJO4\nw+TyREYQaMq+Xn/aaYhmOf+Jk6n4Zum20Pv16BdcrpyfuXXzmU6zWHc90PCa\nBkdbgnJ+LY/CrkrpqCsfcsSV+dG8aftWg2prGE8zqmRXQLzc0kDtMJEy2Mdm\nmFC6/ePQ01i+5mWBTk8cay4ysQ0oyQbRgmU7wrnO465KPC7PVCKOzjcy/WXH\nhoG5oVAIiPyuPQS48CbrehRT3kSfiH5i0woI2iqTzBqHnoLLbrJaQn0ilg1i\nQvct5ocWAKsCx9rwHpq6KLtg7GAukc+/MsHny00R3TXAkqFDEStLkBZCYFl4\nJEC6YwgKpLf9v8KeDhuCbWXty0FxLZ1AnL/UhgQR8NpBBZ2YxddGpnX/ZUJ7\nnhK2idKMLY3yPHXkVOTxq0QPQo5plaid5bMLWyADOYPJ4V1jLN506+sijDZT\nFaYcApzhHirruiTWbaWABmhVh43ccps9myEV7kGuX3DMLClcA59T1ks63ux/\nPHvKB5Tc2hndK2FlFsmCLJhXVuiPCyOLTxOygw6POhVONwKm/w044kBZQXiV\n60aPpe+3mr41+owbBmD8hErfbfsKVxM1z0+pHmUp+Pl40onRKA5CEqmLyTzE\nrjzBTCn+w+Zqku5BcICtpjnA7mc6s3hkH20uFJKDatGoRLqPCuyyhKonMN1m\nFgAx\r\n=7I3w\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzyFqzLq1xFjfEnPAgerl7NdiXrQACKqeOFiy1BZStwQIgKH7dj+CmzR9NntGS9hyBoWLmCL06K5ASOUvRHMl+Cbo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.1cf66a07_1534348334563_0.7775321381920499"},"_hasShrinkwrap":false},"3.1.0-alpha.42615b45":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.42615b45","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.42615b45","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.42615b45","@crave/farmblocks-hoc-input":"^4.1.0-alpha.42615b45","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.42615b45","@crave/farmblocks-theme":"^1.7.0-alpha.42615b45","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.42615b45","dist":{"shasum":"73dafb2ccf4bf33e986c0b2cdb191238e505eb80","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.42615b45.tgz","integrity":"sha512-i2HLrlfS86hqizmcxOFnf2xTZQA7MwAJ0P6ZEsIXz6YSAJVSq8Z2KuBL0hSZwnM339ZEzOQKNwhoHESxgWfRkw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdX55CRA9TVsSAnZWagAAjJ4QAKJAcSuv+AwgxH1iXHda\nw0SFXThFikvNhXnoDxqKuGF7Tyfcvig84F/C5n1CikaDRcB2FrMlWRhU2KBQ\ncGQX1C88Alp6c9W9visVJdEBTELN+XNJvOU3PXVgz4fyoRl6gWLGAqkULZb+\nK9EwDbtaoB2A+MMZWCUurPCTC6i6BQVzhO9s7vVZMBy71iyLpUbmF3l5kerD\nfA/WaTPDNJGho7AjVSlwSFxWrVzvRPvEeIYFuvMfcJQVolnPb92DTWthXQv5\nhxh0KoPvHDSbnTMAwjwU7DfNaWaFpbmZJ5cR2BgNypC7AOTXahhE6ushb1Xj\nRUX4r+oeaVu1wu2McOPNqAXnd9VDLQCM38G3H4txsgNUX+2Tf1ybNQJekZj6\nuEgfQL0yN5nTIb7tfIAFcueIAHdQpdmoC12IEWPpwLuATRKbzSDL8GV3bnzl\nN4W/wMT1RvwreriMJfUOfmhnzuCIM2DZ3/dJJiso1mIycIK/1X57MI3LYPXD\nelKvu0AiF8IQXMA6op+1tPRRsy2kKZQlYgb+BzNfGd+QvcRL4jOj4mD5Jtvm\n8szIC+SYcBPI9ovKFP/wl+APhqpS5xEP3yjSkLnOC+elotFcbwHuUmcbmjBJ\nG9N8po5+h+k36VRoZGkTVDcsVzO+AQILz+4j09FrYYMZpbkK5cGTCzodRGlh\n82zU\r\n=b3sQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAsWsVkZW554SWMEnONW85Fw4JSwFvfuThKwi7/ennnaAiEAvtgEsgMFJ8w+1221UFQ3P1hok2aH8XHQ+G7WFEnC8kM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.42615b45_1534426745122_0.6477629279126182"},"_hasShrinkwrap":false},"3.1.0-alpha.236ddf5f":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.236ddf5f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.236ddf5f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.236ddf5f","@crave/farmblocks-hoc-input":"^4.1.0-alpha.236ddf5f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.236ddf5f","@crave/farmblocks-theme":"^1.7.0-alpha.236ddf5f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.236ddf5f","dist":{"shasum":"ff6959735a16ecc1f6fd1f70648963c59262646d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.236ddf5f.tgz","integrity":"sha512-8BGxB4Ew/uTohBAl5AsiIKKzDz5YebhVrYyJDnRp+DSfxxBbyx04GfGYjOZG8Ln9XokOExmFBi2TeA8FFR2xaw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdYpsCRA9TVsSAnZWagAAW50P/1aTZMQnO8KMBKnV0BQ5\nuGOf85l7bdFspkWu9aGqu6nfBPA2tB4BWK8Iss9mPu5YjB+xwDP9XdmLOyFt\nC1CS8nvM7/J7CwLuhbHOuMAu4W1a8r/tVmQ74Bo0bb41pyqA8BO1tYrNFGm7\nzxgft8Tdq/+kSg0OnpA4KUzy6tDc+eC5CYTPwS9X1Ghu8Gcet0/eA6zk5C6l\noASKd69CHgAcWTR6fc9euTP7ASPd8e+pQROV32gL5epDz/mMHk46cHFukcPJ\nYe9huH096bOnAtb21zNFQIku6GzA+RswsFe1iCmnKXBawj5OWzpvax0Hm8PM\nWXvbMZfZb0LLESeWB1wFpFKm+kJQCm/H+rM5DHLy7tNW1i+om32iu8Wnx0tM\n6Mw8PdJ7KI5BvdyeYkU0J398oz0BQrFSi4PBN5hZi3vEKH3Q8wWtTxJ29OSd\n7dFpJx3eYk+eykXPJoUgP7Mp+eTp5A2T51gBWjyEDEjk93giub244EOwj6Ie\nY+CBo9aRHNYDBxQPEqrG93YddzLWG0atpC+zwlQOcT8qM1Z9YDKbDOWQU57j\n0ylSrt/JqM5Ofb2yqHufZEoVE0pLY2jXVKJAQySwsYg56bAZJkO1bCAuqq1W\nYUToahw/ijUD/Qaws+7+VqGTQM8KVlJTxZ5kPH9R2ahwbL3dcK9OgHN/Rc53\nYbYt\r\n=bNfp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEoOyCZqqbjw1ovxb4Z9UqotiEwh2QUUiAuJLtpZayF1AiEAl1mgS3wPn9ga7cQ9Jd+d63BtCPuZ3qEgATKx6J1qQKE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.236ddf5f_1534429803792_0.25079854545240066"},"_hasShrinkwrap":false},"3.1.0-alpha.252f9b38":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.252f9b38","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.252f9b38","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.252f9b38","@crave/farmblocks-hoc-input":"^4.1.0-alpha.252f9b38","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.252f9b38","@crave/farmblocks-theme":"^1.7.0-alpha.252f9b38","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.252f9b38","dist":{"shasum":"4f7becb72992c9089345218ed8f1c4813eca9ff6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.252f9b38.tgz","integrity":"sha512-Ps6MD6Ohz5n7saYTmqYmVSz5QYla5qM2uxH0YW2KSJIJhZ7QVbZIXMhrdvh1tDyWNVxd0k9kPHYK8ojtwDCRiA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdY1/CRA9TVsSAnZWagAABD0P/i9h0Iw1SFMYcT20P5Zn\ngC8xsb6vTnVqc0P9fJrryTPWgt0ZifuBDvOgq+jZQFfzChVj9kbbSHUjyCP3\nPOTeEgKS6+1UgeHjhCAHyIVUqDOWWmxuifd1SnSL0UgCM4SUX/AdkIQoUWmP\nh5vZ0T0u5ovGxW6YFqgsKhA+k4msvlinLt3cSBY6vY+nwFHzXUY9L3oJAxvc\n092RFYC3B2lVlpq7gosFluDnXWwLbefVXkWyTvmoX8SwHOu+yVpGwvrARqYW\nhAe2ispMtkSos+RyRQFMKeghC/PUNJ4evAHDMl7y/chyKc/ESqQ4DHGTefJG\neyZc/D+KXxEZ4v74frCdA1eBWByWisMxFjdlZfgNKqoToE83kjx+ebrNuByd\nyrVSKrP/fPH7f7ItBSXpQBtCNXoJFEIPSyFvZBrUcRs2H8eHuDGhDME7Xiim\nQUK5G561d+rLgx3lrxJx2P7SqEWEVPwpcFU6cQrdmwj8g8fyHeagr2F13Y7C\nCVSIF7B/p2CzbvStSosOW9B/9jYsJcUgF+xVcHaRqKN5FGb+WUT3Ad0wk5+S\nwPmPnBS1R1o9mfGkhWRErCk+IjZ4sEMz3iselWqeYtfDdudNKsat1j5SSNzf\nP7/LCJUVkTUAJ37QeQL/oehKtx+sfq6gPCvUeBUR8WkND0O1dsdtjWOnimCn\nBtDl\r\n=jdmd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBdJh1p8QqdhlGh4HsheRApJDZNxP9sOWdo6Rl7aVMcuAiAi9CCPOrRDcoHiY/XyaAqL5V1niRasMpj41LQi56mWxg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.252f9b38_1534430590983_0.8428120167730144"},"_hasShrinkwrap":false},"3.1.0-alpha.17f7e81c":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.17f7e81c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.17f7e81c","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.17f7e81c","@crave/farmblocks-hoc-input":"^4.1.0-alpha.17f7e81c","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.17f7e81c","@crave/farmblocks-theme":"^1.7.0-alpha.17f7e81c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.17f7e81c","dist":{"shasum":"8502354506b964999ab6bd5dadee51316e391287","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.17f7e81c.tgz","integrity":"sha512-Zpq/10yNZNqVsXd5sxhZENnG/cn+Pe+VzU8N7E8mbPFie+Xj4ciXMq/1Puh61iYCk83snfHNiUesIRRm3WXb/w==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdZ4WCRA9TVsSAnZWagAAOogP/026bT7S6OzJ1Bu8OZCi\n3qoDFJS6Old1cEbBSvjBRvfv+PblirLGmoA6Q4YOWOiHTDhzYtydK4l3JbbT\n5TOXK5cW84tk/y/z7E2R6AEY100SVc0JME5toDoG8n7sKR4amJCXDCItPchl\n3fh6e2qSo4RpNgJiRWh2i1ZdnDTd/bjQaCw8e3+9SajSZ6EwL55GP6AJqiEl\n7mp37rwrlMJUWwGmLvptC3ABOGt40JurtRAZCREG9vkjqEWsWzqXYXE5LU66\nxnH/dGDdk60TJf0Xu7xJcwutUiIH4NesgRh2NimGjOAZazL3Ze76Svc3xnak\nWbAu0vDEoCNJW0D5Uucie57TczHRwTbbX+LtQ+gD8QmnBa0I9j/zXwV92vk+\nDHM9F/Px5Xf1Hn0pAtR74AOjFDFIbVHzOBBeO/U9tY8nhvQ8b19k5OOHcwL1\nUbu6D9nmQxSoSakMMKN2lkpdsA8JY22S2SddxywYEtj/dh7glXRR875RDZ+7\nQDxpsY5H6czpFhPWQftavlUA/g0T7XJkjpIpIXFoMS8WOL/zMNa6f4tytmJr\nA4J8JeUBPEEIsq5Bt8WDF4cUzQ0rNkkkAi4Xi5GZ1ZBbC5txHxNRUmPZxrbI\nc5qrEVBZVd68RGgCPo9hGewjP36mNHjRnLEPpRvLKDYExUYtFRRqKdz7+p1S\nBvVv\r\n=jLZq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDFCNAjZBfZmtsjyNNGhoBk9PhojrbFR3fDp9SAXqRnxwIhAKRE7+fkWfekG3suLZKrYLOxkBIQ57A8tMdocR8puA3O"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.17f7e81c_1534434837410_0.4645407053284649"},"_hasShrinkwrap":false},"3.1.0-alpha.dc1e82dd":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.dc1e82dd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.dc1e82dd","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dc1e82dd","@crave/farmblocks-hoc-input":"^4.1.0-alpha.dc1e82dd","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.dc1e82dd","@crave/farmblocks-theme":"^1.7.0-alpha.dc1e82dd","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.dc1e82dd","dist":{"shasum":"d1ee5e91c3845022469e082730f3e84473cf8d37","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.dc1e82dd.tgz","integrity":"sha512-H1MLJGySByOO8lTBjfafZOoVTogW4dJTWeQyFwzNXaMEC+mu2xSMGC80OBneDN5Us4dMzOm8XuDcUJGUXPN2fw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbddEICRA9TVsSAnZWagAAwTMP+wUuU5x1eZXMM7WiylgD\nHodIWoqOyhX/UvzpcATGub/wiOYVKIg376xfxtMrj5WFKKCBcYENh2Xu1XpB\n24RJsO7HwBL9AaSBTdL88q6jPryZNXvDvPCF5wMu0oFkOs5Ttth6Fet1NtWn\n2AComPL5zU8Drkg6IuLYmJtbPHC/BsTzpqwkHA9aTybuIDglJ/YKmeYhoquU\nU3skdOsG7XmwOaUrb/6/B8Z2te2IF9NSvxa9/Yl2LJttl/OLpnMQw0ix4gen\n3ZfaLYCkQGQvT0UxZYyiuzji0+eMKFKfiwk5Io7NFVFMqwYiVChzyB+lg63z\ns5RGiJraHODzrSWDHv6LflRU2+Y3WgUfWOyYPEspTH9IsnZAACK1lsMrAsbX\nAKlpZG+tJHd7Xvtc3yheDcrwXyUMp9RyDRew1qXh02AsGSYaRJB/Z8OH8KGf\nuMYkDja0sldk+1wSxXAepZ/MlYmZdt5U7xogYwHWNK5gvOPZTIqrLz7pMBC/\nFNcJOZNda1JshN63dr54O/K/zkLYmc16j1crrcLLz2OvdUuw2sLovQUWJiKb\n1w0r9W7/9OdatUofm6ToF44RH4eb8yACCXGwK8ix6DoiVWBEL/thxmkRFoA4\nBUR5Y6MFgOoG+Sy1Y+J9LkgSMFPfpBrJ/phxQAeNZOpqatqUYE7uKpZnijOT\nnjzK\r\n=kO9T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKxO+o0PFNK5Kgior1MLAL9ZjqCMVJvAkt6id9RoIcVwIhAJlnjUbN71aN4C2BGtBfEH96cfWkirG7OL1dSQieBhds"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.dc1e82dd_1534447880256_0.9477718395562449"},"_hasShrinkwrap":false},"3.1.0-alpha.0f2a575f":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.0f2a575f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.0f2a575f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0f2a575f","@crave/farmblocks-hoc-input":"^4.1.0-alpha.0f2a575f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.0f2a575f","@crave/farmblocks-theme":"^1.7.0-alpha.0f2a575f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.0f2a575f","dist":{"shasum":"50917e3dae565371e4f9db76bcc5d9272dd06b65","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.0f2a575f.tgz","integrity":"sha512-KblnpbNFcuihnYP7y3FWpPNfgNfJXQU+AWwBGQXKmO1TKUHecn6G1pT3+UUTt1Oq8jYnobX4rINuXy7EJfxbFA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbddK5CRA9TVsSAnZWagAAMNQP/2bqDgmk+IlKCV9APZAe\nk139CCbXP6cVZZWv6sXl/0qlLut0ivSLBCzW7IXsAIOzgAVXfqE5bLddr0dB\nXJxn/x5knyDBsqXhBiyYbG8zRjr2/4T4EbUyWi02wt3n5FMiSzRkIxmKmoUp\n/nQqAO0e3LTEe++cGff9Jbo4CMOtcq9YnRVH2IB0zQdl31GzqCKKp2ifZ95u\nTdtnTd10VoK9tDfJyvZ7zE/hHF4K+pFQkdVLMRBsogrnBHtpJzwGSQlp7aEZ\neiUSZqjAarkpX6kfXfICxjhKDJ177jyOA32rEIqcPcBwTBEwco1rCcsYuVIy\nA26IRjh9WFfPIlCbcq5H7yRFULT2+OScLhb32fB9gJpDg6z3XADAFO+pjMP5\nXgXHfiBzjIx/dUi5CnukcDud74/F0cDNNaipNcqmAU2kBWmgUBcptHOPDkGs\nn2dlvdzhvq+QjZps9aX8lkE7cqLlxbIIafLt535ktLBqdZPRRGDTntafkyXq\nKVvE4++U2zvy6enriOx695qGjsRCYH3eD7yIjwRiY/gM2xF5DxDSC4V5kHhj\nl3h1sgSxjWuDmtbVVuqwYWtTr9CMvZgy+Z905A+oxB3tR0QYwjlmxU4X7Hau\nLGW2SuOq4ceSLfbEMK+dSjUjDOmU/oBGU4yRq8i8eR5BrE9UHd3xFrJENvJ6\n8GLq\r\n=nZBc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEnjFTv4CGYBz6/GJG31qN/uAEaPmfm/E8dVAUQSYcTgAiEAlRzhvE2A38XZ4N1lgqcY3xf1xoYe1v8KB2ideu09vEg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.0f2a575f_1534448313456_0.4179409374399514"},"_hasShrinkwrap":false},"3.1.0-alpha.c5a38e0b":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.c5a38e0b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.c5a38e0b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c5a38e0b","@crave/farmblocks-hoc-input":"^4.1.0-alpha.c5a38e0b","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c5a38e0b","@crave/farmblocks-theme":"^1.7.0-alpha.c5a38e0b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.c5a38e0b","dist":{"shasum":"e64e050954f001db02a2a8f4d779986e5cc0b950","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.c5a38e0b.tgz","integrity":"sha512-Uuma/v2RSvlpy9UiKzGpDtemrJkqP3YryZJ9JhJWgWiYN261HYkkR1h4xSgWFNs/ZTOJ66VbLFSgxo+ASNP5mg==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbddLmCRA9TVsSAnZWagAA1cIP/jAFzL4DUGnYk9FiCvii\nK6uUcKAtOLX+zW3ZCcZVSvEYRfU70vTIET8r874cYgpEmr4VbcFZWfWp1yFo\nSwzpPeLizxldWuEg6h1G3nSIFPLbwN2iWYyz93FgK4/0ITRSKE45fAcs7lff\nqvqkK2B7Q2tTro7ToojGNj5uGFhHVqK6kgQDVPS26tflTW5JKVquQRLpPowm\nqeVZ/a4GFSXTw/p9yU0PSXSshjAkeGSVvrsGHjIPez6GB2s4FdsA6fgFyvXW\nWc0O6IoI6vAXcJ7r9rpH8jrzSgQp/ZTRhLrjEOHYKNpLw8p6LC6RIW1kiyuM\nm294oWAI54oH/aat/kaFbX3RWcvP3pXn6hLQ1LSsEHZi34aDQoznryFk/QnP\nEHVtE32QouM+1iwtyi80cKY74PorozIvgbKH9UMHKbl9RQvtHnZd5T5/Pu88\n9u04PLOQgAEfXwM7WgzYeNOrD71HCYZhBzyV3HK9AUu7EwmE4Ec1GLSNfT3R\npslM8ZfVhfnxcST3r8fszhGkD+BgI2v5U4ekXJp6v9p09TLR7wr900z7Wihc\nqmsp8bSyJsOOpJv9Ug34DLric/YQ69kBzf2hFHTuT8aHKnq4d9pzZrq/ifUl\n/1be1g303KbFEx49tQ6TVQoFW3kqEoIkkrlAtY+T/DugddL2lbnJS4mwss3p\n6AtQ\r\n=DgoW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH6Om68oHrosqJPk8TFVjx4fz0A6xZXsQ/P1o/eZcLaeAiBwyMEoXdTeQQjqsN+xzd2h5KtQZJyG874lIEYb1GkIsQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.c5a38e0b_1534448357328_0.1356550739474749"},"_hasShrinkwrap":false},"3.1.0-alpha.c7186ac9":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.c7186ac9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.c7186ac9","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c7186ac9","@crave/farmblocks-hoc-input":"^4.1.0-alpha.c7186ac9","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c7186ac9","@crave/farmblocks-theme":"^1.7.0-alpha.c7186ac9","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.c7186ac9","dist":{"shasum":"b3026df0044316d482a5b6b12eabd9f523392279","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.c7186ac9.tgz","integrity":"sha512-NR1zZnbmupTtjnXLAeqnTpn+rVlSsCFVMg7ujI4kQJcg/jvZj/PPvDXj7XAzV9QBpGZOQA3Fb/DC3nx4mbYxOg==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbddUsCRA9TVsSAnZWagAAvdEQAJiJo5stCkrlyF5gy2DX\n+1SbfB2KNgXIh6SRc+RYSdJlvfc2x0SHAkLUwr3uetuSXdiYKpdYy9mllgMl\nb2AkKnHFNb6HZXactUzDTB2TTWIA47eETWKKe0cH2zQPNUKIbWTrO+o4JP9z\n+TqkwhELh27M3o7P+eoDR4OgHyMKQgDfVRCabU2uhYJuLLNlSBMakcITgcmk\nuyioNJbYw9dwHXI3fy+S6YI5Rcml0bxr+VNQtNQMYmIDfynpQHEhiuHVI3EA\n37vPF09D7i6oiYnOqNdA6S8xFUeuuG555Jef/cGk2MrtNcpjAXOW9EgDGHYe\nR9qfKO3EWUyFd8YcBXsRmidG6wIxhrpPNtK+N2y7ry25soM6yACKHK9Ijkxs\nAgYvX52Yy8hkKWBUsx+J9g0lcUy4goif40rUZEk5P+aGTV+IYDcn9L4NOAiS\nkqRTHTeuPae5Sn83wT5+HZP6RxsIu9P9l3JEltwB4F9eXaqxxY4yjrJn+2Ai\ngiA4eQWNqYWRWrR6Z4kQwfjROsPvOfLAf7gLEyj0l1QT3vp530UbqsSMHYfK\n/gdvkgzqmMrXSTRl6UByDTXuUxhnzQbjekJjiBE9/IiMXEPE0T+JKC5mBSC9\nNoesGz54ddLAyhBIeVonpUhInD11kNxWDvHgRskxnhSaDO/gpAg3gYOw3AFE\n3ITu\r\n=t6oZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICe0NypSfBP4Ax0UjPCY+L78KokR+jaOqK1wVSS5/ibIAiAROQDoHbDTD69EYTuT42aQsrct/f9ZD/z6xSvkxF2O7Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.c7186ac9_1534448940198_0.510175729060758"},"_hasShrinkwrap":false},"3.1.0-alpha.127dd9b7":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.127dd9b7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.127dd9b7","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.127dd9b7","@crave/farmblocks-hoc-input":"^4.1.0-alpha.127dd9b7","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.127dd9b7","@crave/farmblocks-theme":"^1.7.0-alpha.127dd9b7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.127dd9b7","dist":{"shasum":"c9fe55bd12679a0cc0a7f4efda2fd3093859912c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.127dd9b7.tgz","integrity":"sha512-0TjHuf6lHLQAmZxNLSlfTNKlTTtt/y2vyAfrGAZgM/ChQYVeTajujvTX2rwth6QtpzOEdDknZ0CxmB0435LuFA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdd8yCRA9TVsSAnZWagAAI6gQAJfo1g6qghwJSN+ZUk+a\nTf0EX3eS87os9LaG7pabBL58BWjtllQUotbIJK1SMGQfCWsRBBoUKiCvtXzy\npExjurxE6yCK7oayBAtjmpjyjy9bEzeRTWYRMfLrVToMyA/y/DqdXIvqzqWs\nJXMCFzmF35nMa9xgprd/M9dWNnfcsFpmO5fNS3hXnXJKKTy+aSZjPUywo0OE\nyj3laL/ysPEhH/Wf//w2NLPH6JWeLDcKces9JLT3V4oD7a+Gz8q1QDYLE8xP\ncorPByiF0mNKozTEPP1SBlRUufbPK2VrLPGboXfyCMMZ6juSdI9xGLfLSuAj\nhNDpHUTHHfwiP7+RRSNbuhYuYAOUyuVSIde7CZA2Z8gvskZoZ/So4KtN7q8B\nlRgeHuYIfe1fRx55WjVuA0rex7KHplz5XHjDi7f5Ayz6+N3wIoClT0yrzFBA\nHG/83hN8wuYUX6UF20etUa0g9Z4ERt25shcOdinmWbsRV+AYKdvZORsMPaXv\nm+xVAEbZu+9MQFVkb8xOT27LimpDgVLxBxBueqBBnlrDYdDCyqzHZGhtmCnR\nHmbTduWsmOvlq4qhZ8LOHnkHI4BoLPsvmKYaBCd5Ps0eJGetT4trNT93usra\nuqMWwPDFB1YiIgEX9CR1kJ1CKE0iYvM7Epz5uLjZiCdPVLwm6ep7SFkPn0Yc\n15no\r\n=rYT9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH4Jcmiq3YF+pEXoQNNK73DRjZpOwnvNrjXdwq1WHfpqAiApZPG9j8qvPglu2FZzC/oHW84ktKbptBuUkUwrSABs+A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.127dd9b7_1534451505664_0.2277100573950015"},"_hasShrinkwrap":false},"3.1.0-alpha.2463a497":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.2463a497","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.2463a497","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2463a497","@crave/farmblocks-hoc-input":"^4.1.0-alpha.2463a497","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2463a497","@crave/farmblocks-theme":"^1.7.0-alpha.2463a497","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.2463a497","dist":{"shasum":"1491694132de3c8699fc323bc87508c306fbb9ee","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.2463a497.tgz","integrity":"sha512-ZhSMTZFgLaNt+xetYV/JhVhGqQzlnaCtp00YPO+jrbnDhIYjUZzcQyWq+0Naq9iVyqzzmMpugAVuqCtLKyfB7Q==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdw4MCRA9TVsSAnZWagAADoEP/1vQmfHVcvlMe+bF55pu\nkIgeNPGo7fFp7JTKD/ga3W7jR7Kw37BHOTceJZDkt5y5ykX0AAV/T2ITZ6BM\nNX/kSrGPt65mmuDMh2buuBaDk1dd8gVw+JikRzpNH4TDTLpRIzdR/iFLP6Fi\nrvAi7DNU2RVlbjxJyB1z00T2C6AhYXSYLKbljxeS3H6hIedr0FB//okv/fPQ\nYGuv2DXWmvyvshj2lE647qg9k8aHm5GvXo1CKzX3lKQkSEWYWxGami8DBR1x\nOAcSPCgTfo2nL3pnjyPi0cqmqmwqM1z6qZxaqkHxa4Rqw3t/FX9avbKxeDWO\nWJ/7PN4byWgM+QzWrXYvXeTDk2ekKBlLPqrC49wAAsH3kZC+Ks+0oVTo8D2a\nXLl19WIiW55XzReEW/hs7G5jMTOjWiCvAma0ajJNk440uKlpeQQEruI2C5o4\nXbnb6rbmP9MceeMqK60GsiVfx8bzgVvAt0T8Bs/f3tDPmgmSk8M8IpgnQhsy\nbDl6K+ApZ+M5Riwl5/LLyyQ1nroUbNe8RiF0UKKgPQ7bsne4hh9XvgVT99oZ\n57sEV/myzm1fJqM8WjLueZ8m151Z9H/CaSCbVz6fRGIuWKqNMCt8ZSnt3Nqs\ncmhTBWTK1LerWuBLCVo7rpjq3m9/3phmv2iV/AHPxhonSI8WO3l5IZNdRjHC\ntG5Z\r\n=QXbW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCj798TSChYrVodaCla9oF/UJvUG3sTEOSCoHPOkI9vCQIgB+iTCFvZoXl/ixBsKX5XDND3oMmN8PIRVymAeCOkT68="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.2463a497_1534529035275_0.7368658080202595"},"_hasShrinkwrap":false},"3.1.0-alpha.d6ee3182":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.d6ee3182","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.d6ee3182","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d6ee3182","@crave/farmblocks-hoc-input":"^4.1.0-alpha.d6ee3182","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.d6ee3182","@crave/farmblocks-theme":"^1.7.0-alpha.d6ee3182","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.d6ee3182","dist":{"shasum":"0c37c8ee65aa401e8fd5e98bf95e46fa553609ef","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.d6ee3182.tgz","integrity":"sha512-0xm0WwWyBpE+rC8LTKptW8sCjaEWNBmBVRKU7EJf1lKpqFUqiwCkP8iXhOT0m4/BCsGM8NxpekBCs5LSzWlxBw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdxMhCRA9TVsSAnZWagAA8FkP/i0Nise676KAGAvkFJZJ\n5AvSUUaaWtaHFZzY4oAgZ5dJYOcuhnXcBPGVFWwz2hnYjVZSEJqz4qCHxjOa\nLXhOm7Ja5mEZyV+Cpb+23JPppbo5AA77iEQTVnxQT0Hwo9ANtS5PpJyZJ48S\n7N4wgnyRLa373atzrggQl/r6qiSLXbCuV/Y6rM8H2xdLYrpL0IN01ujx/QYP\n2gvCLhP0wkXTxvbEoxxNtUdIgDanqDYrwEyxGdhQMYEc19GRA3WMva9VPX/V\nL7WKDKTXnGsdXheJBq3wbYeDUXVYQm4MWM0DD/0jPguiUavqRoI6rdPreor2\nKEffIxk/faVagMn37tZDAtjiN1zADPr09opsFOavMo/c/SPNWBaVoV20Mja0\n+L0LxEOiVI2koSBJTQ0CZpsbqZsWHhRcJPHlM1qiwoL1dNHoNh2gNkuF4+sI\nWnS2JGWGHRjoEfjPyHgar52gk9zwkqVdXC/oNg/YJxmnjlzlv8tvHZ08tGvW\n0VAdzOQ0VwOhtGZCE2XVN1wzZJabpmwIiJBFxGxcyAIgWmbNZYucBEKUxFj3\nwAYCOpCHDziyV4LWSxjwM7AyNF/bVH5GV7Lm3Z/0YsYLfAE8ws52xdPtgc5g\noa9/WDlnRLyQBw45IglCYNavYd1SPGvvD3iE5PRFFOMqbju4fExzuC+E9QfM\nDQLE\r\n=E7Wg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC3TB0M0+rgnBJER/oiPxluusk2Tp+gR+a14dpiMMRWDwIgLo2un7Rt4LR/rZEMB6Ml7gjuKW6RRSud01UpHXo3rXw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.d6ee3182_1534530336743_0.9512506299438257"},"_hasShrinkwrap":false},"3.1.0-alpha.7a26eb24":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.7a26eb24","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.7a26eb24","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7a26eb24","@crave/farmblocks-hoc-input":"^4.1.0-alpha.7a26eb24","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.7a26eb24","@crave/farmblocks-theme":"^1.7.0-alpha.7a26eb24","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.7a26eb24","dist":{"shasum":"ed4e63aa3ce8c59bff32f9606d30867bcbf825a9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.7a26eb24.tgz","integrity":"sha512-GwQ1JcTebUz1Dp5xWqPdxWa/rdbDlasY9jMcmyhvM+sFHMCjdqSmO9G4CS7FIkju+v/96M0OaJFFAPPVMiA67g==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbd0OxCRA9TVsSAnZWagAAeZkP/jG4zdL+zmAIUoZL9QKr\n6KK+xGxAd/DNicPyRuD/QnzHmpx4JgeP4EUzP07rVz/BoopQNnGCht9L8AWg\nr35oIv9/HyWc9mJ0YfOsdE8GbtxKUP0aSm8hYeXTW/1twivQRLbZP3qCjc3z\nHJLZbPZHRlPmNx1VPagyy6APDSVZEoA2OBCEaS1boECY7xUX6mpVU1e8wYWN\n0VgqTUcGCyCfkEF8XSNzrhT/SMO8AvY3IjFOvT4Unt4J3qHcwue9MWMKk9YA\nAAO70hKlnh1WQ9Hdcp+hdP8M5tr0SqOGejn1GOHpaYxkpre3JjN7oUmbUbcY\n2LPrEudclLOagBiVjQuX+1bKr72jZDrpJ/El5nmXNPk+/3Gun+hGIqb6QAds\nQje6uKwqvTyTMfDuxfA2yAlefHhJ72ntHP5wNfYQj/Tb89bHntV4NuZUtRsL\nPbmCpBfcoCICnrSed3Yw2RB28qoxmXTNHd0lYITiglmeWBcgUyXs49vIpe2f\nl6kEBYoIBeP7LV5YUrZgvs1XL2yYAEG7tfUgoi7W+M1qyDT920S/JtY4onJo\n8LswCG9K7Wdh6L7TXU5q/9vlw9eSoeJiEbeZrISSMQ21Z76kMZGaUxplnEEg\n1VrGh5wUNUIoW0Qcax0gQrdw54BxKL8TFbJtr8FRf3xow7op99YwwNtQojLJ\nfAcP\r\n=kdkU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSSO3oxdSpA2x4XospJSiYQqN1cZ2uvSxx/+0Fleyh5gIgTd4hsrsG6SUhrH/l4abhLRbFH7XhQoPIh3ALXdO75Ow="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.7a26eb24_1534542768499_0.8454843018959886"},"_hasShrinkwrap":false},"3.1.0-alpha.de257c32":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.de257c32","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.de257c32","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.de257c32","@crave/farmblocks-hoc-input":"^4.1.0-alpha.de257c32","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.de257c32","@crave/farmblocks-theme":"^1.7.0-alpha.de257c32","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.de257c32","dist":{"shasum":"da6d7b44db873716703ceb6a2972f268f5e7950b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.de257c32.tgz","integrity":"sha512-1aZT9/9WSTvmrdF/YwYUFm6qDB3ThAdvBHBQ0FWw7ls9Pv9pwuRMyOF0D5bhdQzmH4E7Ao5G6ZgREr71P1AgOw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbd10YCRA9TVsSAnZWagAA/zsP/25CLa30P21kVY3O3Dun\n8dBMCmZKA+i77WwRFS/Iqko7bMjq2bSnndL1ppicmdAhdWYXM7NryOBUKSaY\nRNqV2bQw8jnR9j/Ld2xoLXLkVO6bUoV6jclNKcq5NZUIDojGdIBdXQI7z4ij\n0Kv97ZL3mR3LZ5DqkmnDTsCNXE96d9Y7CBihUXud2LEh633gUa6hXvpn0S0/\nk6bG+Oqyj0s5r69r7TSlk48aeEB02z71GJskrpjEgvgkwRp1zZ6cebrigEp5\nmD1GKxLcq9pk9bsL5g94MyVZsYKll0gP4G6rHMEO5U7ZYKbtxbuTKUZnvedQ\n3Z+t41wGN1+Q3iVpFfdB4uWkob9C6z+KNdPYmpRoHPkIJI5st2UQvrgKsLsu\nCcmlCDrFi3OrXCIuBYZX6v/ke3mTrQErd8RkOPFoFbFpHTzGnbdO3F9A4pJ7\nbojV2jsuOSK2yPYV2F5nKJUOkHxxqi4sgGpgbIl0df6Sxj4KgIhCrwzNP+LX\nvHaIuId5uZplIulGK4Gh/0HJ/hwNcrzBBj3ziuaZQ6unwoJtTeVkz9dp5S48\nbSEugMboYoup65AvbWSZaWOZxYiCOvHshzq9SEC04GIR4gZUMIlQOVaYEWXm\nTPhkDMyKtxRbaKmMO3JaB0XZ3w82v4+6B76VMbJ2ogRBUM5myX51cqIebXxz\nodN9\r\n=Hppn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAVHG9tABexZHs/Aoz506LeB3/k8vIMGK0lcy15nVyGHAiEA3kuoAgcq0cJM13w4dK+KX0o8V5ZRq+JyPD2OspV5M0Y="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.de257c32_1534549269215_0.13431612214834243"},"_hasShrinkwrap":false},"3.1.0-alpha.78cf3adb":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.78cf3adb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.78cf3adb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.78cf3adb","@crave/farmblocks-hoc-input":"^4.1.0-alpha.78cf3adb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.78cf3adb","@crave/farmblocks-theme":"^1.7.0-alpha.78cf3adb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.78cf3adb","dist":{"shasum":"0db7d62e9ec5a9380c2116c54962095280f6450e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.78cf3adb.tgz","integrity":"sha512-sWHPWx3RgFZBFxE2mB1n2zOTvuUc6x2Uf7ogQvEvFDv3iy78xYbNGSGsLAcJ1Rdl11bjDUK3IhpOdJ/sZ0FUnQ==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbeYobCRA9TVsSAnZWagAAFhkP/2zkCBt4ElO/MaELK99c\n+pTC+46IOITtB3jynqdACpOOWf6VoKuxYFGuPNSHXksCFWyPre6l4uzV7g41\nKTuMdn2l7SlSjUerQiLyNbHfR/4DtwTEu3ZBxIk6EnE9lRXKdElutuMmBA7u\nsXQUfm4dSxtFpy0e1zTGkMWcK1atrkXYwBIMX1PlqgA3joWhfAIrOwrueIf2\no0wFObSB5cFSmPfaIuRC6PLqIR5Gt7fWgZHunhBxxwORAQtQNexGVwyh93M4\nB0WpoL+a6U0Yo+ecx9TEyGfcdQ6EbibSFu8h3Id/G2emMnl/U1Kp2Bjf7ouo\nDtS/DPZLBADe3P/LuIxYW6brxoz/dCl1feQW1wv7yd1axAq29x2p2IKb6cuF\nK8/+4+Zmr+wykeOLSgMqFk5pfx8b1aMcJ5FopDGMpkwG/C6xgTNKYmwfAiwt\nIN8v/3+wiB/7coZdYwo3fVDkqOTHv5rhKTJC1kYpRdSbLeJNIlQKMUOx+SOt\n2kSR/vkBOyVLbWRMQppSTN6dDyoeZ7XPvBkXqEcx427nnMNJGYfkWinOM60G\n5tHO+VaGKBw/niw6j6hTCyXVykzqUWevwuCSW3/3KKoGPnrzl7PdEJkOjEJw\nZCpXv2YEQQgQBX+hG0lmNEu2UmIBIJgtgyTW5kpvVPplVseSYcy8I2YOgzn6\nNS85\r\n=rvdq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbpIWfHb0z3mBFEcdS5tO16czcEVeXl1OkwGpnSX1Y8gIhAMVC3SDuSZfI3IddqZ3jFS7uv1StFO/Xv1daDXDhpjn4"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.78cf3adb_1534691866561_0.7620861119188063"},"_hasShrinkwrap":false},"3.1.0-alpha.f6d76111":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.f6d76111","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.f6d76111","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f6d76111","@crave/farmblocks-hoc-input":"^4.1.0-alpha.f6d76111","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.f6d76111","@crave/farmblocks-theme":"^1.7.0-alpha.f6d76111","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.f6d76111","dist":{"shasum":"af4d33c51565c0b8a2ed9f41c3ff08835e7763ec","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.f6d76111.tgz","integrity":"sha512-+Nn29b+zaVN5NDxuyBDkewEcIFjsHNCRuzPtaJ3JNug1lpoNsLBsPw0eOc73FEOVm0T6Sr9v2EPMXTjFxMNVJg==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbesmACRA9TVsSAnZWagAAUP8P/3EFw04rGKrYImEawOBX\nSjoY+AYeohYA74iSNzpPCMcECEncWmhV+pM6rn3CbQPFesfAb42IF0nf1j33\n18k+UVsZihn+iAhaeSTV6vDIQbnurGZNcbQOYah2OBaNiFnZrqvYwv/cZlvG\nXMluzHw5OEazKP/lk0+UEfeOgBjc30NcgiNe/0eagYNJlH+2nuWg8csPpBU0\nUIGQfzv7Ebz+D8ogat6hfwADsVWGaopBITKGSp9bXI/dphLAEbXdYCSmMTl/\n4StYK6faTlOYgzglRaHy9D1Rb11fe+WH8j3iYiY8T1ZsBKQZmNGNBMCGm2CP\nfBtsFsIRnhyyyLEG97y0SS6wZgaBs4ZNahxq1mhHUYY+7XJo0ujHqduCrnd0\n2302T3V1S2iDARRlNi3xkQySAxg2kwy4AyPC6LJI/iYxQbdP6P0y5Y0NVEI2\nC8SAtM7rerAKFstyuvjgkQcQIO2zdlM0wvWIxxcNiMYOyZiv+qqT3Z4mIeWx\nuTwHcVJjGI8kspy67bysjAmUemVo0AdbE9ldEluovt3SIvGF7WN2BIbAWwMy\nHalcxADU9s1nyLpNH2g6ehcvk44wNrEP70T8FhhNyXo685dKfWOyjeiMEmKp\nNajI5I80osEbeUTsiffrnoOK5COQ7f3SfQWDNQAAsIn/9d4JHxvb6RnCeGqP\nZGlH\r\n=9vwp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD36Xf59ryxAiDPkAGQcaxwMwIfJef4Ke49s8hs3ZuX6AIhAORZqsa4lZg7kmscNkcwl/PQvTAOsQ6Idz/lDnerqcZ2"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.f6d76111_1534773632037_0.94945262699017"},"_hasShrinkwrap":false},"3.1.0-alpha.7313f6df":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.7313f6df","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.7313f6df","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7313f6df","@crave/farmblocks-hoc-input":"^4.1.0-alpha.7313f6df","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.7313f6df","@crave/farmblocks-theme":"^1.7.0-alpha.7313f6df","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.7313f6df","dist":{"shasum":"40f3d65edb826cc783dafba9d406d758074e3439","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.7313f6df.tgz","integrity":"sha512-neuNS3k3DPAtNzcLIwSjpTttOd/q5tC6zp3a0LT0LeY0NWozY/RZ+WJAPCoI5O/ATqblLkHVQXoS4Frdo2d35g==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbeyuvCRA9TVsSAnZWagAA7s4P/2gcjMPv9jK882bAkzNX\nMf/Ktg3NLBd6CpaKQ51XmRYtzvxZ2eC9HRQzkrkDg+KnrLx79MViFvkgmXSF\ncUsh0lE39vweQ2zea5z4oSpGV49FyseOPkvjNQWxsQ4nHdDT0U2O6R0jM7nx\nscRVM6lSF5tO2hdZy+6TfYJQUiq+dqgYr0S83dnv8RRCP6xOY+Ye63CWYJ57\nwfIgxnHn7wM2QPv56DWcZ79neAOgy59jAgoau7ZyxbajJMR9I2LloTX0GL4Y\nSQLNpiBNyvo9VQLhay5kRReNvABp78yOyuZts0//AfNyHOM/LEOcAC9EDeIZ\nyCCC9kSJwx3wXC1qj0eyDfEEe2jGYM3yDfAJ2AblJBUm/gm8hG8i8Ckuhyjj\nvFiG76nnwnVkLQmm1/9HheMBOP6YHidjuMUPBsefZ72r/J07syZo5Nkniljn\ne/CbAQ7TI6D8DAi0rBfaHyMm6VJQnqR8IGyWTWtKpm5hi5p+YhGhVY0z1F70\nbWv2y+yvGwwM7KJqLRzJmVMjd66szI8tteK7huc42/tRAB+PeSEknkxt0HWX\nGbAGJYq2IymB3HNALoHPixbZR4bohHGTZCUxstGRDSig0tzTo/tairdOzLgJ\nSM16gIcyNnyA7vfKvUqa0j+kFtCqplsuVzRQxGYplai/2UAq8wtKR5bCOIY8\nI43i\r\n=05H0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGhdWRsSpd+PC7dYlg8DN95pyLmmVpZ06YOPBCmVP05nAiANHmKogP47wOuigsvi+++5zY0beDYwih8T4FYgI1j0KQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.7313f6df_1534798766114_0.3234502058166149"},"_hasShrinkwrap":false},"3.1.0-alpha.c7dd8ba3":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.c7dd8ba3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.c7dd8ba3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c7dd8ba3","@crave/farmblocks-hoc-input":"^4.1.0-alpha.c7dd8ba3","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c7dd8ba3","@crave/farmblocks-theme":"^1.7.0-alpha.c7dd8ba3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.c7dd8ba3","dist":{"shasum":"0f8e016c118f459560e64eeffc614b4f29a6048d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.c7dd8ba3.tgz","integrity":"sha512-n5blx0yftOY8+ViFzHVwnK0v2a4hITpXC9yMt55atMUMcvS04Ga3TGpjrBswDdJRGQ6df5AJuXcA1hkQqM/QuA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgFvACRA9TVsSAnZWagAAyX0P/i1rlIOjDcwZ1fe73WlK\n5H3uulJRJs5FWlSrLSsK3FGQxpi5GnZswg4Qa2i15HPr83Exq93+XSPq6d5F\n6X2yhY//1ECzlbDBojlFn/pvlJeHbiewxOWg2gw9JN0t1p22ksoPlJzghnKo\n8TlxzNg0lTEmM4rWos4hfe3BG0Lo2d5fD6rQDd7d6NafcH+0ziyfdM0+IFNG\n4v3+UpH9lKIxPTZXdtrnBGBGA1/r5f50zNHenHzonSHJa4gFsU1sDRDMlCh4\nGcsT5D/CM4O2+MSg+LO/kkD68SWvdRRa0kZZwkE5AhvE8NOTTAD9jgG2V6Mn\npw0HpfFiyIj4eQX/6VOu2CJa8/pdZDaKZXijHDFTxFMiRkbVrOZTNAfFjev2\nrfIGcLFHlXRpTOXTrvgy6W+CeZOLw7KjGmZJbR3xhpEPCrvd+vP6IrgFq6oe\nB/gHFKpytCCrSs1Ci8/YhM+ITyoZUBuhcG4Mk2vqb7Vov9AUV5e1r8202HE0\nlJJSqtxSjhIr+HuCsvxTyGXZc/VwAGF3zaMVvt73nA6wi/QRIlGI/cqur1xn\niamoVtJYSx86NCG4yUTyEUkuAxajKtlEFZvVH1dxlQIByAi8OEYonJFr13Q2\nza72o+l0rt0EWhOoSipC1IrBhTyyBdYtNcNGx4o8GqcxBPI0G1Nkk9xPGyBV\nJSat\r\n=EwG+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFU4G1XO1j28gIyFoIbDkCRhxTCuLGn4S3hzJhRL+OGMAiAzjO2Is3I3iZ/6t0Wsp/ztFW42Gsb9lp1qMgE7hwrLOA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.c7dd8ba3_1535138751716_0.3637498270342119"},"_hasShrinkwrap":false},"3.1.0-alpha.961cefdb":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.961cefdb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.961cefdb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.961cefdb","@crave/farmblocks-hoc-input":"^4.1.0-alpha.961cefdb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.961cefdb","@crave/farmblocks-theme":"^1.7.0-alpha.961cefdb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.961cefdb","dist":{"shasum":"e8547c2bdd4b36d415d13b22970e95ec3bfd3297","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.961cefdb.tgz","integrity":"sha512-EnONMOPLo935VDuDby8/S250TUdGZtRMfPn60YWn0M3ivm1f+im8r1BqBGhFgABRL5C0RrJWVIAmes04VDl56A==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgGBCCRA9TVsSAnZWagAA+YYQAJ+ZN5Cend6nfW2lkBtY\n3d4+ncspTy6UF5MLmYaEnP8BfDIuRaUMz+CtG5X7LkrcHnfNqWingtOugPmo\nEQJ1fKSM3jFuGds3OwZZNN6XPVJVxCgRoRowwvKldI0GIXdAlUZ4XO1jqXRq\n5zIzdXif+Ic9hrnxWWJ3oHi0Cry1djpMOOjzkn1IpTDpXOqKQxv6Ruxe+Vll\nR3ycyVg3UEUggMbkRh4JsG4ZRD+ZFRCAUhWm9lYzOEcqiOKz2RAOqWvufeGX\n/uLIsLHX8XTpVtIskjKDOr4PoCSdTajVyEAfFA+10j02sHbTK6ydGENavJ0e\nUK7BMaHszxy+uDMY2ATnlHmwc0cjlNFFm2J6K7Ol/u3dEcopNi7FSBYEleoI\nurUkFyq6SynTAdpXnmmgc65mu4qApd5YFOk0FCOrIM5kGh2aiG69pWIStHQY\naqWxc1kz6UIW1itbogZy8UPNQ5oOEbzLb4Ytrww+ahnop/sjjVRzw6Qv0y5g\njqdjpsfeqUtObpibBFYwXcF246DAlSp1Ao0ygJm6WxFIwfhH5ajtrKylpdfs\nIKEiyegA2BbCuOTqNDCyQu4ASBPVi9PU5G+IB7A37bjD3gI/wRuR9N/VOpGQ\n+OXbOgUOmBYZAMLNzYBjWB2vLQoC6x6AEG2/Oj3Cbxfk1ZVBnm8HX5MPdGPO\nCRST\r\n=VJ+D\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC17J3s73eOc1N/K0c4EfLBqP/kv5hcmkT37ya7HAfr8AIgUjggJh4JViQhc4M+vkjsPeunx7T8JbRJlF2aa0D650g="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.961cefdb_1535139906064_0.6917275546417281"},"_hasShrinkwrap":false},"3.1.0-alpha.1841f038":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.1841f038","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.1841f038","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1841f038","@crave/farmblocks-hoc-input":"^4.1.0-alpha.1841f038","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.1841f038","@crave/farmblocks-theme":"^1.7.0-alpha.1841f038","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.1841f038","dist":{"shasum":"4cc5f324ab19db2a41b696462071c31176f83ab1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.1841f038.tgz","integrity":"sha512-JqhEUeOvsWavE9D1i6MTDU6ZLNE3SWWUoMXnkQzojO7s0hOTMaCUQTkhLu6CH29UrtY6IoiGKNVvZtefTw4teA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgR3mCRA9TVsSAnZWagAAp7kP/0Ga9YO6XhTFuGrLrarp\nJfbCgJ5CffFYRchluzeNQNV6glKVlqdP19wOTSmO/gM7qX3NO0fvUlVUbBV4\n1fn/hGrY722/MCcgUEFif4VBNvEib++5Xe/lfOChRradII/hb45vsWX9K26Z\n1/iMxrxhQW4zTWOPp1jEAAT3bnPbqRZAAe9El8E6Gq9SfVWNoZPKVKbaV5mu\nehuctp4v7IOF8RJD5ULtX9ogWymP1Evm0VFgqe18O8XnuCw3rqecys6DeEHc\nZEskuxS44P58fJWw5ELXaUP2V6/SFamVHS8oCCQapnLUcj/dEtVAmqEB+uMp\nIBTqNyBNGsQiOM2uZvJh3Qt0kUuVnwudjNGMY3xcSyzo5pTxk+14J/JfZnrP\nD5EUb6n+1n3szCIYQN3EF3Oe7GKSXNjQhljpdEizPgRiJ1zEoV0styQ0AAuR\noGqIvsBMbVWYQ2SzExYvtj7IraL09YIWbmPts19ej0TTG/seAi0xmNjrJDna\n/TLs1E41p3yhrA5/TpMKEtzheN161WbthLNz/zvf4fUgm6i6G1x8c0yz9qLc\nFzNhR9tnvCbAEIF5tRK/HPuQVco277JOb1I6pnnPsUCxlGUOqRWTWrVjWHGy\nAlNjzTknCmk5RtQ9o4j67azXZwZQR5qI0ulq4jKqaRHbDma/ZC4sFmIZEVHw\n29ax\r\n=Eo0v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDmZ6Oba8eH/YzsftKdHfikG1SObHiYZo+itG2aIvMgFAiEA0m4IiIEpRTsGjSWkx8DWm6oE4Gxo2me0cNtQ/mzQXaw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.1841f038_1535188454202_0.2469375997360881"},"_hasShrinkwrap":false},"3.1.0-alpha.7f8dd094":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.7f8dd094","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.7f8dd094","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7f8dd094","@crave/farmblocks-hoc-input":"^4.1.0-alpha.7f8dd094","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.7f8dd094","@crave/farmblocks-theme":"^1.7.0-alpha.7f8dd094","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.7f8dd094","dist":{"shasum":"76f7d9c6b4fdb80dd7a08fdac6931f6917b24468","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.7f8dd094.tgz","integrity":"sha512-8i34q6pKsCdZFR5Y1VQtQwePhl0qUVcBpwI9UY7/bL2S8VKSzR1xu+geOzQQjTzjEe/g5M/V99dGrig6xxVDgA==","fileCount":12,"unpackedSize":48329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgYPaCRA9TVsSAnZWagAACmYP+QD20DJQYWGoiDhH+NuX\nmTepiVBvP1EedyNgW4jM32AzVWlu5PojxOPobHHISYMNV9cTXE6YVD6hB1Ul\nja71iNENCSl7ajTfAeS280fGMiLau7Wd+pwKJXnV1VjdCIyMJOK8nDEsZqtd\nNghHoKlH1O03F3IaHT6l+5GDGk1rjRWuN8os/3m9rfOH7Hb6E9hbv5B5z8le\nrUL+RYrZKK0XLLTkh7QAIRmL/VNKbIiyhnLlz0jROfJU4NBnkZxHEOan71iU\nOAyeEqB+G+VIR27R04wlWQw7BB4IoBZoJGMf7ZFeiPXA5hAJxrq7Mr+ovOcC\nSdipPi7A4fg/ljl8LKbNP2o1k2EUjj8qF9xxcDLYz0SNcolWBADI7Qxl24W9\nEe2RoiyV4iZyvKdxLpnpe4vWZsZJzItxrnI7ooi3n+trK3WreyTO0/vF3Q9m\nEpUAYIzAafmZPplmdKQj9+o2i9iAUQkdc/6eIqStlo/pKLszIsbSHgKXw8bK\nix+/SHqJIOr+aqXUavSvue94QTtA/GcPp2ZnohGvxiKNuLQMcgfSFQc3vtvC\nEnCsxhMC3ipXZbJGrKss/JihJwNKw4bz4FdqdJOr3hWITMKcC3JQelgikcAT\nwE5J+MXXqNOfP5Ismw8HR96kkv3uSVvXlG/dcfBwIGC6+RWH4mp5Bi0WI4OR\nviM0\r\n=9m4Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHD0Ofv7KFobkotVcK+Ntv42AvjKyH3deLeqLS0kkLjhAiAko8CsVExX+XrHy4psFkQjlG4JHJJz4KrBpt9CH3XCaw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.7f8dd094_1535214553524_0.03248538065474005"},"_hasShrinkwrap":false},"3.1.0-alpha.fbca7606":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.fbca7606","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.fbca7606","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fbca7606","@crave/farmblocks-hoc-input":"^4.1.0-alpha.fbca7606","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.fbca7606","@crave/farmblocks-theme":"^1.7.0-alpha.fbca7606","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.fbca7606","dist":{"shasum":"8a8cb5838176205810699645a265dd562e62c644","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.fbca7606.tgz","integrity":"sha512-mog5YXnahdkp7jyTxAzcPU7UN++Ux0PmSwkrS2nRKNaQmmO0UonnlCay1u9bPhBysvUsO08VDs117fLOp8NkDg==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgYsvCRA9TVsSAnZWagAACR0P/jXnGWjKulYRbqrmYD9g\n19BBU0vc6GHQt29pBF04AuwQggA2pEBe43PwOW0X/+M7jDL3J/P+Ly0TWbTW\nhPx/b6MQvWLu7dseHG6UU+iArMZyei2c0Vs61MTGhEGy/F+ynhnTzzCFBjUe\nrLGhnBMVZB7S4KwXLyB6B7jLLeLDYgtFPxYLNRvc+DVkAaAGauq7Q1GfB0Lj\ntfDLcjc10pQev0Een8434A38sNbR6RABZHryyiKVBiKlfTA4nKDLjfPmTLXz\nL6M9Uwn0tIgFd3hdZdl//2avnsUZWTxpXjGKBfxRnbfo0TZmf3QiDpnV/HZF\nrSA/AQ6XtZgv+mKWVIAflQxIlyv4Wytx3qoPT1I67xEUdm2BzWGbf9W2yzyY\n6wepKZyK7zA+qpjpSvJFAyIFZZsEPsvloBbM9Rjs2/t9lgtAgkeKA2+umoYD\nEZgbVA2yJ22J7ka9bvfXYQ4cBfcqBfVd6wRtjZgODCyVQ8319RMj7B0wpZ05\nlH0vpP4+iy8MKH8W4hWKVPdRlj93X2d12u6bKkfysVlEjfF61o+EnWPZIHaC\nDMYzN3od+AyklN9ZTD2vX/8/O987W87ffLq9EGlp7qkp6ph0fIqkGWtVCXmy\nBocfW4jkO0wnd/GmDgzXcP4eY7ab+kWqzqxSaI0KKmzjnkBU6rJbOlW2pfp8\nHN1v\r\n=2WVL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICKkN1g119qAQT2xESNln65GtZUbdWdj0YEJZ8GyRiycAiEA8pKPQnPyMbAomVTI3icQ4zSahp0FB7dYjJxGjQ7LvoU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.fbca7606_1535216431361_0.10260073987412377"},"_hasShrinkwrap":false},"3.1.0-alpha.c31e4564":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.c31e4564","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.c31e4564","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c31e4564","@crave/farmblocks-hoc-input":"^4.1.0-alpha.c31e4564","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c31e4564","@crave/farmblocks-theme":"^1.7.0-alpha.c31e4564","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.c31e4564","dist":{"shasum":"90f2753f70188a7ef8b553dcd8d612205a34b835","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.c31e4564.tgz","integrity":"sha512-wFvJqk+LlhMRnpkU5ZHmOb7kgP1cizcZoCCxGVyiqjcEp1eFfOArB9+8XvqvQK8UN4TlogA2slSqNgRh5a2tvw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhZZmCRA9TVsSAnZWagAAVa0P/iCZz9DFl4IYLGj5GAk3\nuWmUTSU76/tZ0fLB0j6nywoTRoR0Bm5Z0o60WtowfctAyk98h/fC+e/f5j5d\n+JQCMhUsn/BO3akn4zQFJ7nrMBJjU3qb0rOQHZ8RXLCqWDhNDSdt2RKIQ8PJ\n/IXayEB87KGqSUW1Gw4JCyeTyL8pN2LujLDBO8rrld1iXByE3XNrdHhuT9xJ\nOTaYTrQzTygtrTV3GndwmhzSVWQHo8wxYEgIydgp5k0qckMrtFOqfUYQVTFx\nFfkuIoK9xgIZCv0xd07biv2Rw5tdVlDjH+XEa0nus0eIutx1Ue1GwIZss4wb\n/neMmGqrTQppGV30PglcAVHIvUe3LzVU4W0VvUb8frZpU7/MkB05Q+UUweXu\n2HOfu3QoEyNU5/u3TvYqMvf8fmeBTgD8i2M6dzpUgj+WMM8ODbbMl65L7I6O\niufkk7cnEFIOXIIQMtZVgRLWUeZPDyBllugQhGvFhqpREdRGnJWlk26oPeNV\nBOk23uUCN4Mr8x7mnQfOKd4EnIZBVnqyDQ17TEmTGGmTadN//Zf4Gl6QanOs\n7uzeIBk0wc/ywbT86UbU4vU9MhLMjhzL9CPaVQ18Qr3SHFBaxUu4arRDVMdW\nja9jNqygmHIUjkzBHVp1pxA7NXhwU4V+6CTj62hiN38ONjWHnbQgZb67BpiJ\nsKCR\r\n=6lYL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAUbEJNIvzNK804hc3Z+1GVQXhMtUT7+vsXh7jyeTNvrAiAJlFRlLxFaK+iC2wcNr1DI/lXBvHWD7adpAEPJBsw0bQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.c31e4564_1535481445966_0.2222399807237494"},"_hasShrinkwrap":false},"3.1.0-alpha.95bfea5e":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.95bfea5e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","files":["AUTHORS","lib"],"publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.95bfea5e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.95bfea5e","@crave/farmblocks-hoc-input":"^4.1.0-alpha.95bfea5e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.95bfea5e","@crave/farmblocks-theme":"^1.7.0-alpha.95bfea5e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.95bfea5e","dist":{"shasum":"c4407a36fd0ba8c5031c20fb59cb656c6411bdb4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.95bfea5e.tgz","integrity":"sha512-Ip5PGKPZDSVNlEJmWOHaBthEcwUKUbg9nIS/zSxhYsbcnRehbcf7CRcm3OrYe/sNxiwbqcFWhtK4oaLuJ+imlQ==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhZsECRA9TVsSAnZWagAApqwP/3fhkBHEdJ7DaHTbmrc+\nJdralvcxhnUTPTJ7mXToPspxok06XbitEdIyDBKWj3fdF4HM4KrFtSjhKp+h\nrKcG5AMV+5I/8G3jG6jTj29GUAL7eCsdE/vq5FdhJHWHdCQ4LGZFGr4LTnNO\nyjQdQ9/OydIEaBXrpoOSiNXeCTRambyojspWv/d2NFA0cP221cs2b3mY37oj\njw3WwAM6jV/cldWNLj6wAGRjWZ4LomMS+QCbNrWX0kWAOsO2wLK2xKBRJ/uY\nHKpYuoJMHpxJFSOIHoq9lXmJ1DKXVLGm2Z19jHWNrbd13aSQV9GcrSNQZCe2\ndmJm7aMie4OmwhuWyCdVqmA+/r4ENuW0kiwUIVugmQON+1WAE489jG69WPye\ncten/Vg3A9DR87FQlWjJlJMZTf39Is2rColw+D8B7AKsuWIz+L7xWrcfcNcA\n/DvoZ5RNL/Z+L26OLsNg7KqZ6N9pZXGv/ebahiEKD+Qw5uLO26Dgb10jcTQ9\nZl82PITapk1QUesnfycMeg0PVr7VpyoUt3xT5USJ0ZIe8Tuv20J7AiykGi3X\nDSGrpjyxtIC96VAYl1AuHJ7sU79DX6XWEz6gBAJec9jzMhzcCUWrxXNXoBCV\nNnNKe9uCpbuehobRotPdU7S7SwYvJQhBXGOUpbn3H4Orn9ARluxSB5XclLnw\nlc6b\r\n=dMho\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGjjkeAnXIfBLJTKIX9MWIJcJakGtxgXFhv7SKlKz0ROAiEAgG7J9UvlTjgzM/nBc2qmHJn9YMkmGv+UV+Sa3sb+hQI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.95bfea5e_1535482627996_0.06900188819475472"},"_hasShrinkwrap":false},"3.1.0-alpha.88621341":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.88621341","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.88621341","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.88621341","@crave/farmblocks-hoc-input":"^4.1.0-alpha.88621341","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.88621341","@crave/farmblocks-theme":"^1.7.0-alpha.88621341","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.88621341","dist":{"shasum":"819dfc08ac437e457219c40266acf96a739ddcc7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.88621341.tgz","integrity":"sha512-PTncV2MV6gjoYfgaoufjXnzZmEuapMSO8gRdyn/6nynBvbTRiy3g9s84cx61X9guVQSJ3wob7ZDA+7Ri5I7b9g==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhZ98CRA9TVsSAnZWagAAPPYP/3iXZh7/8YP2Zz5bGiJy\neqVZK0yrqrDIaiUx0lu+9O4nTyZ5xt07F6AM1vdcD+BUA21n1CNmOoahAKFv\nLcgMpGQXdL2wf6iA3iZZkE2ZVf1LYmgNLaE7Oov4O+D9GlxRSwyTPAalNlyx\nCDz6naEh7XOmrLSrpyx3fFum3hFQIDNEY42o+J0QSuxUUdYhc6iK7ovz/iZQ\n8zNFalmuOv/chBa48gr5Lamcxf0kNiDc5wePk0ZS7EpDjvzhPlE6dfv3leDG\nmv22UBqHzF3Av7dKoHlFGlVy+AIGqL63Z14U5YjUiaWFoy9lsRH8pNOPPa9o\nqnvm/gemiW1NjTaCHO5qXR1hYo+0CB1ppi4J3yunWdWI97ZUjuLBrI+UHml8\nAbZW1b1kBzv0Rmsmw+0yiHKzYWzjm17nsT+/w04Q/W/PncZ/6qcGFtdpoeRf\noElMlccVI9/IlMleNaLG4GGEDAdeACsqhn4LYWGrt1HyCXsi/JZ8o05Zt6/3\nFSBD2tImb1MmDA4mS58vZSKd2UmEoi736jbPaBFzMz4ZHE2amx4ATTBPD03T\n3Li5/xg3v9EzcjBzq/8EuXkItGSYFUSLpXIhRadP1pgglrSd4WLY4OCcv4LO\nwM8vsFEZ+t4htu5gtRZXcoey9CebyuU19isaCy9A0Adf5KetD94IT9XXaoFl\n/dgf\r\n=KK7p\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkEVKPWVUlStg6w4omarpK3wf1JhWLTe7oRRREYJctmgIgdffEe6bgqIjRMtKVB1Yd+KLtez2HLG+rrlMTPUHJelA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.88621341_1535483772042_0.14519339860459834"},"_hasShrinkwrap":false},"3.1.0-alpha.26813bdd":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.26813bdd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.26813bdd","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.26813bdd","@crave/farmblocks-hoc-input":"^4.1.0-alpha.26813bdd","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.26813bdd","@crave/farmblocks-theme":"^1.7.0-alpha.26813bdd","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.26813bdd","dist":{"shasum":"04c7b2c233bfde4dd10c9aaddd48c757db54e556","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.26813bdd.tgz","integrity":"sha512-joBbrTbz0+4CmHWbCV+yHKG5SFTnProPN18YTx7qMIIvcR7kkYjMxZ12+DQurTBYmE6lRx15oFzY0mTaFupjXA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhejcCRA9TVsSAnZWagAAyPgP/25u80JBSmk7U5mESrfB\nkUZWnpDk88v6j874+BKp61x+xjU7YX/k7j8IB6y5lZ0bMrNfmcnhhByxd9U+\nvdXIxQhORl8qLKFUZI9vddqTjDM+Mn9qLqiVhSyUFUXy5gOtKXzNh/QashZs\nT0utVQxBNRcIc+xZkBKVx0Q1b6xWRp98v09Kxr7tH+m72pwVwZ/+w52sb6dB\nEz3hLG4VSGfv2OE3HTI2bacpwcfmmOjwWwGOeskTqvspjeKNm+rFkqk69HyO\njqyaC8gMC1WSc/ROB56AlZW6+6QtW3PYsq9nrxkpV280P0ZZWDrBDenJcRvs\nv9cglobdH/3sc0a19gZeBb67Ara9BJloM2ic46545OwrKjZnrpvYishGoKEg\nACkBP6/0i76MH5xOKEgFoctQvp4BuBDFFRBQY/afJgyhWYP0i4kE8F8/76ui\nlWP+t6rxQxROZ14eL75pEsM27iYjP3u/BdaPt5FKRA/aezmdAUY7HXQyR5WH\ndrUjXDgJA2vo98SuZmF40h8SGcgpfRseVmcs6kNF54bNU8PbYIa2jAFp4lJ2\nIf36OGkzjT0eCnx7GJQI+uOKT3BIgTbTnncazOCgwPbyoxwLnznEOIqde9mR\n7TPtDYTxIjt52t9ELNt1qdScgz56Jo8ecu8bJQWwT35CcTtsNLtoAKF98cGC\nuRdz\r\n=X+iw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHK66bM31o0c7xxQy0SI2tQqJ0ou7UfYUec0c/dd9HEvAiEAnCkfEdPPniF6hCg5Tj9k2xolp795zNMco+R3z32CDHc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.26813bdd_1535502555726_0.33233600762861837"},"_hasShrinkwrap":false},"3.1.0-alpha.5db3f5c0":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.5db3f5c0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.5db3f5c0","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5db3f5c0","@crave/farmblocks-hoc-input":"^4.1.0-alpha.5db3f5c0","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.5db3f5c0","@crave/farmblocks-theme":"^1.7.0-alpha.5db3f5c0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.5db3f5c0","dist":{"shasum":"d80d8de35fe4466f574f7f45ab12a653197fdd83","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.5db3f5c0.tgz","integrity":"sha512-wjGotfqe6AHcgwb7VkMRbj/eY261+kfs2/oe8NNpnEEOO39+KzyCJZEOdNpA7Aan37qLV1cMXABwRgLDBt1F0A==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhiHKCRA9TVsSAnZWagAAwxMP/04EBrgKuOrfKsJP4TsR\nB46TTRwivDBNgWWX1PKnp8a6C66LHkpm5fiv3TMqy7O1vsNzlp6fGvC0ghuL\nACkSgfL0OJ/QAdE9pIA4a+U29wJKn45LxzzLpAY9+GceU1khAhp8OBwr+Gob\nN2FEQZ63spOi69BZbUNVjRffuqVq1MTTUC/GvwFfJYjBrj0cEehXTZS+o/K1\nfHqconFzDH05T3FUrqrsZUzI9R/72LKRN0gRwuAKre9zERR+F9Xs9RcjSgdE\nBkagRPJD4kTFb6d2JOlNBV4er+QavI9HOMWaqa9+cizmsGB0NoOxnHQKQ/Gz\nTcw53v5nQmmzjoTNAdefSqFqaEHEnBsVRZ304JxKkSKFwX27XXMfdCzGFGc5\n82YNH99Op09mQzCAe5NjJQJ8BCpabTk3uUaCvKlhZMvtdOpNBLagGmXh+lzW\nEA0Lq684Y/T3c1NMFuzz1RztFKk4K9NuKPbw9rKYb14o452H7q/uJfZb4e5C\nzNof1zRSs9D1r2ecmJJok1AstO6zgjG71QUy6Y0Mg8dwT7sodahTUzn1wK4Q\nVgLIeorX+ZWCQvvJnnyEX/6LN3Ezfit6N3NcDR+JKxPaf7D0OuiucT4Bin6a\nHgpcY8n/xSxptjmnTrVOHFA3rnQ1KVoY9xGkpx4Odl7cW293ss8IpN84wd5g\n83xl\r\n=veT+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC7kIsKBNc8q/iJSFlcz6A8Jfl5oQBYcdBSLcJ2BhiXLwIgIhHhOa1IMwZAx/mm8V5jqM87NtdN5KnYfE0AtVTVRhY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.5db3f5c0_1535517129769_0.08024547001756721"},"_hasShrinkwrap":false},"3.1.0-alpha.14e363d1":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.14e363d1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.14e363d1","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.14e363d1","@crave/farmblocks-hoc-input":"^4.1.0-alpha.14e363d1","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.14e363d1","@crave/farmblocks-theme":"^1.7.0-alpha.14e363d1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.14e363d1","dist":{"shasum":"84285bdbf4e3fec8015424aa2f7652edcf4bda21","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.14e363d1.tgz","integrity":"sha512-0uELGRc2GBWMcc3KORag0Tblnv22sG2zug7rnhPwqJopbnl76gZOFKxIuNRR1grJnFlnKN9RGTMPVS91t7fYcw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhiIiCRA9TVsSAnZWagAAwU0QAIbwagGzKa47d0EmLNtO\nfa2C+DgF48pVAkh9pMVotsXZeG+96LLZsKskVvwVlfcbnHo0n6TX0gYPVuai\n2qNCv2MzRyiUSHx8CZqySqElMuiPK/om92XvS4kDADJN8rtHcmekfSIu2XIL\nImcD9TcwfUQr3grOuGXBNrghq7nWEdyHYNexBIY7G7pr9zjn9pkAWVxZDWpn\nrXbksV+J7afPOHvIX3c+kXr0pHYtZH2KzWxuOyJecUQ9UW2g3ScceNQKR7dL\ndDv47BVN322YdXywDOfkPaePJAAv6ZkijfneeazbhTrJl40Lvvu6R4fTnvUF\nH1G9waYgfFw6p4cYz7KUYYBvYoX59KKNLVzFoXVsqJ12lIlIVToubHG5PMe1\n8AgY29Q6gg1CVs8vJh1lCoJDUXyCIB6Bd/nuP5tyF6M1K2PEsxaEiNPCNyOv\ntlcWqS4ztlDe4J1uq4HNGRhy3EbN+y7bK4+ePbeIM/61sjLu1DcKs4nIC/Kr\nVUJ8tABMcQlqBv5UZEqc8f1CUjOdziCV5saXhPyFVfKdjKiHF4HlkDBlN1mh\nXAcIf7Y6Q+eDNbtssXrT2lRL3/nwKut+ked1m7GtHrQo9CdRBeVTA7FscLqq\nHzg6SjuKkTFvdfMR1oBwJycpv/9CyDrVenTimaMhaLLF835Db+pzvrcCtitv\nS2i3\r\n=CwWi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3dkYnwRfijLPRtTYedubUwF7uOn1D3KcMrW62AzRdSQIhANi+luQIRRd12S2RznLVUHvs77JFRLCZGfAZCFAX6RQM"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.14e363d1_1535517217624_0.6662993673340296"},"_hasShrinkwrap":false},"3.1.0-alpha.eac53cf0":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.eac53cf0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.eac53cf0","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.eac53cf0","@crave/farmblocks-hoc-input":"^4.1.0-alpha.eac53cf0","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.eac53cf0","@crave/farmblocks-theme":"^1.7.0-alpha.eac53cf0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.eac53cf0","dist":{"shasum":"f012ff0a7f652eb6540d04ac68b0108defff0fff","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.eac53cf0.tgz","integrity":"sha512-0e69XaRqvPY+CUxpghcqH1HTaGcYpzBMe34tR8YEXi9X//xTFD/UQW1ZyufKX8NK8bvDera1rXV8o47QI0Gc/Q==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhj8hCRA9TVsSAnZWagAAss4P/0f5cFvSmxdl2NUCp+Kr\nogDwVSIUAVRKH9BW0UKLRFd/AHVlkdEAKckPB5j3WlyaCCLxSulbKo7u2VYU\nSw6paFn3or7pnsqBcM17KJ+i3yveKXC6yygNX9Lj37XUDwc+/Y3AGWlHv1xe\nJ91iAnS5d4Vt8j8zxIusO598egoCu3vVBE0a9vqYuu4LbTQy0aCiZU0cFdWM\n7uVGLKa2X87uFL7YD0xLaDDglvOCor79efPHYOSCls7eqSZRfKjcKCiC/7bh\nfQih4DDXfB5Gc3bZVhwAWQpqqO47GY0+5XGA90pHOiOnP2xaWplFxkupA3Mc\nTR3HQ5FN6ZjNZKjegmKaHhTe8MCxKIxg6WVoQ9Y1G8FG0KEfSCEsPwo1aBDM\nEZpnGatEuwaGbFZyQ7DQ3vIi+HR6ttrEKgNffVqXk2IElhosoN+NaV/KNdg2\nzOB9tuoL8yD2D76EEdNZUaY4OIWEShdWRKCbq/xeeYHEMGVUwMx4eosydSXV\nlkMs3IEq6JY/MLS1ZMb6S54qNAA0296JZ1XbwXBGGprwIWQVLRgzVKsskcS2\nDP8S4DwkQnCuJtietqu3sDLRZTFiFSqAmJkBPDp22M0qkxr8IwcqPtwYfDvq\n2YRYyDBrB9DrqX4VPt8Qqbw7Lx8OTSkxRg5DlmDWXoy+84WCQJW9c6t5USxy\n72YG\r\n=4yp2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFfZ8dRlZ0xgvg7WRw4bV1VjVfbTL5edabJuc7a0UwaYAiAORnfsYIxiSZ4YsB3lt6St30HvhPlWkH4MzfSJ9Lyntw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.eac53cf0_1535524640552_0.36571893232119845"},"_hasShrinkwrap":false},"3.1.0-alpha.881bd81a":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.881bd81a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.881bd81a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.881bd81a","@crave/farmblocks-hoc-input":"^4.1.0-alpha.881bd81a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.881bd81a","@crave/farmblocks-theme":"^1.7.0-alpha.881bd81a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.881bd81a","dist":{"shasum":"a3142e040a9da8e704dacdbb72a43a1b48d4eb58","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.881bd81a.tgz","integrity":"sha512-nAe1ZddpvF1bew6+SVJgq/zIWWD1M4Z45NsJyTxkGpYQYgMjCX9idQSa6jMuKluGug+D6wBslg3gSczGl2bI3g==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbh7YTCRA9TVsSAnZWagAAc/EP/RxrXmMXRTYSgpVOp1DJ\ntyIouAaHrv66Sr4R39uEN9Iwb/MCeWdlrrdKyf/Yuug9Xldmw/w0NFDI+I6N\ntY54ohi7bUCaIXq/4QCsMtHqyLZfq/wuJr8SbkeDLBIdmAeU5B+RGc8xnq+T\nKqZsukOILHulPpB5IEW+s484TCPe5/MYahi1euysYKL82I3CQla1q8rfpKA9\n+jivrDAPmw/6SIkzv9dFJnHz84pMGXhG1nUXBUIsQEba5QheQ1NjujAzxD1W\nfS6QN7/B0LmrQWo4ehdkkYFGUsyiy515PhABkxFW3rW/eeyPq39RjzQJ4zdp\nE9lIzQ0UmZ/sd/eSaHWFftQJpanPhElOkyvNvhPP6vDW5MthtyMUXfHPCKa6\nlN7UMWxc1ol8Ra53Wm9EY91ve+cw2BalMBG1GMiVAIZZv0hGQ6iimCwGwypb\nfYyphHVNu7i2mmLk/IIj2jcjA3TzK/WO/gqp1fYfWzmHH28sXfvxRtDFruin\nQmSq8JIW22rHpfWbkR2lKf+7ogJgWorZITj049Tga3nV8GFhBRfxKJLhZIiz\nOc+7CY8NgYEt+7uyXQRgz0b1QOeFaiiF3T/L90bNmUJ8c6cyYY2Vj8Lb3CEb\nuM5XI0R4i6YBHYKuygFmebqqLihK0FuxqUJZnY+UaY7FujnB7ws5noQGiMzD\n7Nmh\r\n=zOJB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEXODrVsUuBUq7RJuAZwhw2BMV5JToY9CVQ+5UxCmn2rAiEAsSkq27Xjmg2CDLyMiQmWXDJz5TO+DL27mN1gRCSNYcE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.881bd81a_1535620626479_0.14266077255924037"},"_hasShrinkwrap":false},"3.1.0-alpha.5a143753":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.5a143753","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.5a143753","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5a143753","@crave/farmblocks-hoc-input":"^4.1.0-alpha.5a143753","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.5a143753","@crave/farmblocks-theme":"^1.7.0-alpha.5a143753","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.5a143753","dist":{"shasum":"27d6251c5d1d6fac48ff688544923424398ca6e7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.5a143753.tgz","integrity":"sha512-7/NDCkFQRXyfK64pfWo+I+4D7is1a1HUr952PcBh1J3M/FpAQ42PO/ZQIaHBzzHcuheoen2pRI4haYEvpW8h8w==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbh8+sCRA9TVsSAnZWagAAEukP/3KjQBP2AKAR7gmR8e3B\na5xDmWPeCnisVxRq+8XuNdhmYGW0PAZaDfLtAmAtl6PZEjqKU3aEwuoApRGG\ntpnLPacOvdjJKB611DhGtYjPLmIIlFUPzOCWn9qx2geDUo5d/0qwT88sPFnW\nM2IMgZGxIJPlfeM+MlpfbuVdkr3N5wMUX2QjpAKM4rrJEKLN7loRCFUIvxpI\nWdLhR0TR8KBIksXjGy8Q9g/FQrKKtOEsoBpnWE6bKCl8FPeau2ZewyLbXqNh\nJ0EvNDnhtc2UM28NNheaZmggbj6nx+a7xpsJ95zb8BfOK+IOz1QHcQLRTFRi\n1pzb8txHWoO7SbIVMSkzm/hDBxWeh3nO1Icd5cJ3XeO1hT/M8l4PRft91Z7g\n9HTUJanZJ/6gB4VYewLVtro2ifWnMg1AwTvBf4wuG8wkIie+PTzJ8555ckOC\nojhpEzBcFMWBJo/kqikDBC7hvd0rFE7s9tUs79SdBaAtVxB3S6KEXN5BEcUl\n9Oqq8Lu2b0FQ6aIW2EIt8gfNpDMyU2ofLKOLCXA1AkeGSvUP0cxxVf6bagUJ\n0SF0DD/RSksyrKuDds3vsIfmaG3z9bHkOWyTswdjqaIH+oDY8RysVJsC3wGo\n0ZT8idyO/P8FYqUWKLA/ngQ39EVMOeBxWA42i0OSaaQB8g8fpMVOjNZJRXx5\n0uXr\r\n=ilSp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7MDLQBSyfZQgpitQVh4+45TO1FYMDTXKhwLi/S7zgqgIhAPBjARJdlCp5v7Bp8NO0btBZasMjqtFnu3h7h7LG1CmF"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.5a143753_1535627179482_0.4992457933863901"},"_hasShrinkwrap":false},"3.1.0-alpha.cabd3e20":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.cabd3e20","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.cabd3e20","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cabd3e20","@crave/farmblocks-hoc-input":"^4.1.0-alpha.cabd3e20","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.cabd3e20","@crave/farmblocks-theme":"^1.7.0-alpha.cabd3e20","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.cabd3e20","dist":{"shasum":"501a070e9b0551a9b05b1ccb49f298538c664e13","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.cabd3e20.tgz","integrity":"sha512-kX+ZZmsPefmHvYjVZVNNAwV+1aOD+Kl4w4kKUWTE/Kr1VQSNO3RJ9CDhxPyI7Ql2PEDKZEc7/e5YIbffnltlWQ==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbh9vZCRA9TVsSAnZWagAA3P4P/RBR5/vsv3vEStL70Z8d\n+DG0nA5W/DkMv97HFUyqwnpeg+6N1VnrztOrz8m2SRFUcHNNtOIqSiSSggl7\nrovmIEWxOj8EEKgL4j2gQTmmGWT4vVDKC/KoLYtI0Ul5Q3FvRnBmc8pbCcrH\niwxHYjPhDKbjAYFP+eCP0BMSupm5sUnrklPQP7/QwN1M5PfOxdCJg5Wcq2Fw\nDVQXFHQkGaGKcMEADOV1DxS1MUk8eGdoNTAdRpi1YUSgRIrdLREB2urSRjVJ\nsKaLMTxlPlvy617zs5ddV/J98H7siDqEHxsa4DGXE3b40KT5W4MG9sWJdIFQ\nLL5uHzjm7djI3Fpxta1NhN0Va8JGwEUztPkdRoZBLzJPDGanZffqRaTJIo/8\nT28mdlRjJ/9iC4hiq9NpAEt9E1DQe5aI/RfGP6Ik+j7qFL178hELfD5ny/he\nwvt+TYRGUNpg4JfPVEBZ+Fsqrm3pmm4AGkwcvnhqyIVZXo+LDJauXaiOWYgx\n31J7lsl57YQubE6Baxkd9cZSRddgp+GRoCuAefZdxZv3mS+rjrgZXZJ1xN4u\nE+ppMqEVkBDt0kWICB/blHROnR3ZZsLJ59pRplx8nO4yhb5wRl2c0mlQRUjy\nwU8c0ZmChY6YwFuxojJVHSJOI5X+5DjH17+sEV41ft6qS6mOtU5kia175Vhn\niZ35\r\n=R4Sc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDs+py0BAt57HWi76qbGPW+temq9+r0qQqfuyjIP2uthAiEA2xN9CsKCvXFk4ub/KXTW/jd9k+AYZLlXfeDUnguoiNQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.cabd3e20_1535630296582_0.43392565060593413"},"_hasShrinkwrap":false},"3.1.0-alpha.2e583664":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.2e583664","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.2e583664","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2e583664","@crave/farmblocks-hoc-input":"^4.1.0-alpha.2e583664","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2e583664","@crave/farmblocks-theme":"^1.7.0-alpha.2e583664","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.2e583664","dist":{"shasum":"162e56cd848e112b42a35ab3fa5db871c3ed5b1e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.2e583664.tgz","integrity":"sha512-iqMNign7jYs7P17LjgWXuOAdNKIqzC8YnpmUkW3FRvtWD5heoFRARzx77uHDxYscS/XZnY7s/oDNpal/ePJ8ag==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbiJecCRA9TVsSAnZWagAAosEP/241qGjnVVM6COlgn4o7\nLIMYm0cESz8HURHiys+QyloOtuztOl0wbBf3r52thIbl1phBxvZMAsTFSmR/\nka0t9OlVwe2C2mmclwpBSgP8aXWt71e1uRsXF8w6HKm55F9oj7PMXgqdVXfW\np7qwEAgRFHfGvhQcXymIAF3d5/SQVXWj7qJiTd2Rp4BRwFbUkM9oQ0zhBBsN\nnfxHDNJ8q+m7//5zkSsQYl+bhFcykOyqUw+OWuuY6n8NZl16ZDzM27fVzSQB\nnQqFsbcJIsERr/P+vEF/Ohmr+3exdn8BF+DPiUCja2jI1IASA2Um/bJ/8zLW\npFlEZG58HhdLJZxB5PWBO1dMvxR3oassvHaRhfJhgl/HpS21gFN++f+AJ/Mu\nTnD2xDlqek5Ok5KFTNq/zEhpmVHz12KEaHcTNE7iNcvS5DVwU/Gd/ByK70px\nV2faow6nQjB/0x8HVQCu4w76LFZVyTlI9o7yU1l332PDB0RMvg+SDy3i+Ufw\n0LKCCTndoin7K/qh8Ck3U8SzMxD144AL0ShsyHd81ebAn+lwdjVSBs+bmABJ\nvllqdkF3HUwmgcZVQylCHe6ask5arHDLvsHoq/l9i+p9dD2yide2ZFux/LNB\n76XUZghE9YO0USPcr6Swsmawk/8ojGTjKHWnrGOFExBkreVefsuIqfuOwUIy\nEsec\r\n=Q12a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFnqhDnjVyOeGFOt6K0V24bD4fRh28zdsDifPwKY84aIAiEAr3OQxjNMlXCjyHxh23cSt6ejQdtLV5pCJnvPX2YnQac="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.2e583664_1535678363722_0.08322392979452564"},"_hasShrinkwrap":false},"3.1.0-alpha.0f1a7669":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.0f1a7669","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.0f1a7669","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0f1a7669","@crave/farmblocks-hoc-input":"^4.1.0-alpha.0f1a7669","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.0f1a7669","@crave/farmblocks-theme":"^1.7.0-alpha.0f1a7669","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.0f1a7669","dist":{"shasum":"cf7d9193e27dbb33403720d14b51a1bf0124154c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.0f1a7669.tgz","integrity":"sha512-XFbD7pLaj3cyRy3dDNJWNbzt7oZgYmR3UCSb6WxQcRLrCXmQb0Ivf2VIM972POj+O5GXpcGT78IskQPWRmt80g==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbjjzxCRA9TVsSAnZWagAArwMP/2tiRrzQZ1cID6jOmotu\niBl6t3mc/KEPyLGtsz3ydq18fmC3atS9eRxmXTULdZDVUKAT1qDbrxrksH1P\nh6JTnFTTQV7oA6XMXF3ABzQIqA5zNehrV/KJ+4ajk/s4oftrxcT+wcTxEjN+\nMItUKAwr88N4fzkIDBOs8xNab2dAVB7qJUb8nJ6bCxPgo+tGwOjXrPIKUBsF\namF2f8B6vhJX64x/nr4KXh7fAZTs0sPB75KXbaW/aD3DODt47DIoxshJvbV3\nADG7BoB0yGzygMsQ5rPONY+5qGSCkWSlqYk8N0AIcyCOAe3Xexfh/t84BArQ\nx82JuFFVJxYtmNhPN9TpLI5r23aA3FubT89ua+5Yvlu6Wl00ZqaC6/yh+fMb\nzxuO13HSQ1wvmPXRPa9NP9nGs/GewuA3zXRC2tBV5HHCwVoRng3lGspiJENh\njyCqjQLJuBx6w3PSIvhGfuHzbxxXTUG4KnQsHnJ9vpgC0W3TQF0wPwRVdVOb\nvyiqzDfPOzc3WgmJCOfAu4vKJm0UjrbOpHLvt+cnhj/D8fgnZQhdUNdl/hhX\n5vjCQuEEjT9Gl+dxC+XR0XkI85o/LgqyRLP033Glu9gGaQN3hQ/jJVEovurI\no/tvqufLfwNSV/T7AsqWxOj9cGy6Dp545t3drwhSWHkZlxCFu3GfRgw8MTw+\nHFa8\r\n=KIn9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBTEedZoMMtHuhJ3Mp4lWnxCK8CzuJED2IkhjEwEQNjQIgHlhzP+uNQtPkntJZvrHjEgjaIEJCq4baYamLJ8oP1b0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.0f1a7669_1536048368689_0.9025313060834297"},"_hasShrinkwrap":false},"3.1.0-alpha.8de4581e":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.8de4581e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.8de4581e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8de4581e","@crave/farmblocks-hoc-input":"^4.1.0-alpha.8de4581e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.8de4581e","@crave/farmblocks-theme":"^1.7.0-alpha.8de4581e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.8de4581e","dist":{"shasum":"233ac18c08d6705e3b90414da1c73640a551bba6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.8de4581e.tgz","integrity":"sha512-zn2brL6leRaXgeiDWqR16k/5g7+3tWrCyMyCHnvme04BtoE1ObeXuqMToIXUm2hweVtjmxfg4wnOKNJkmTzI/Q==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbjraCCRA9TVsSAnZWagAAQRUP/2Iet+0LLVgBQOGMW8Dk\nRdeXdOS5hAIZqd5BzpdGW/2LY8z4DT97ekMbRRW3R5IuInNhW3HEeNpRuxyg\nqAW4CcxO5b6KNpnnm53WRyTEZ0T7DIk1jVZMncfYrCpWfHjIlTJY+FjldaIM\ndrR6J5Ki6gMx8QcfVfj8e11fY8ZzehAfiUnH6DXfYBTe4jBBYHB7XofHf8kW\n46RhxSMz1/3L5E40HQyDI8+1z6EQG49YT5nre9CtThDp/PE3aP9sAhnqwt8t\niAhiHPBQ6gbMEDV9h2T+OCpfJPY5l3e2kXQnBxopCdPWzMJaipKmwT/0Ip1/\nCxEguiVZ5EDsjlkcUkPUR24g8HDE5SEjGoVrMenwLxaLnV2TLSL65neXLQIq\nlThIeGW5f+GQRaUyY8Ko0mIVG8rxXJUfckWhacQViPw/MLeSrVeobwDluvOy\nWte5GBAblymtUZuoB6Rnhd1P1PqcqTNz5JLy+kJ9j0zuztS27wO+sZfeFJJZ\n8pM5bSsH2VCaGImPFmF4HzAdtTWxHS/Fh3v/7PVCMqmIpIhoyhHvZ/8rNrmr\n5owZYMgdqeCFGx/4WU3Ri76Q5MqvIDY9V1Dr6qcSsqczlJk19pnwVTtwswBj\n0k1FiBlfU78Lk+vIybsrDxfP1y8tc/RNcFOjCIK+q4RDL0TW5/+xVoDjzKKK\nJLol\r\n=er7I\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCw3umeIE4Nad4X8KnhZco8bEaCB0iq2JgfzDT+XRrTJgIgFiCQB/JRb6QzSRuofjg5CVMo639ZU4OkYxPR4id4qYE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.8de4581e_1536079489832_0.05341502416096522"},"_hasShrinkwrap":false},"3.1.0-alpha.89fea527":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.89fea527","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.89fea527","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.89fea527","@crave/farmblocks-hoc-input":"^4.1.0-alpha.89fea527","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.89fea527","@crave/farmblocks-theme":"^1.7.0-alpha.89fea527","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.89fea527","dist":{"shasum":"1c8b8d09f0b92688c51517b0c1a50158506f9357","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.89fea527.tgz","integrity":"sha512-VbLe+YF4qHZNFAnjyBeJvuybsAzASan1brg+2NppdxtawHoEKSwX3D3CDynUMdm0Y7Eo4JtL/jtA5FV19uSGPA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkFIjCRA9TVsSAnZWagAAQiYP/RWOxOKZXmCkbSQ5gl5Q\naVctPfF8tZURQWm6PLf15rZrfe/9xo2scrIS2l5RRdIepchPAoQmwo658jdv\njKL+vBN/ghFeQh2jE8HXJTaOULrsqwAyTZcBWYhZTJzJe0jy4rxao7bu2oRm\nUE/AapJJLCe99WizeqopHmIOtFxqN+2gwo8VbMSH8C6rIe2oS+VANmENP36h\ngJRenPsZjl7zowekDmaqOQwS8YKzYaZPtQ01uySo7AMYIAzu0FOld6zIVMJA\n2b//zg4ayFO0BgphRvRiVc4UKQcAHCo1pNlELOb3nbZ2duZ/lENzRbO+OGLw\n5skDvhbFfP+3TN7iGqPb3mzGJRjmhpP4DWOa0zcScDmiy95kA0hcusJTQUU+\n1uizeQHHVzXt6zcQXctCU/uxcSJViSkk60UNKO5EwVN8aQ6WpyP3ED1a4xVr\nqMB/xU6KFN+sHYvkm5ktC+SSZ8W2TB5Jw1ZQXmVuzhyalJfLTFmMXeYpxZxX\nJLjQfgZyaZ1QXW2PUTkpecL1aKYLX5/WtwiYUX/dcEZQE3bJH+6nz7uAiMEF\nxuYfexTBGkhCxU7E+y5xnJIOuV3PIPzBngRtk9W1ValiozprKWzrhuVEHFF0\nT+8SYE+K4qIn3zunfYlJaMSrecRCE1OPZ2BgeVbZ23/aEpnmhZ07Rll9Kn0Z\no4cc\r\n=THzr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHfOn9KmQ1ewJTAko3uAF3i6TCxuxuSznSwM79wCFCcdAiAPZ2JChbelAj3MdZGBTPiFgFGzaiWsi9ctXNLaScW1yg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.89fea527_1536184866310_0.7569004673893363"},"_hasShrinkwrap":false},"3.1.0-alpha.4222e148":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.4222e148","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.4222e148","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4222e148","@crave/farmblocks-hoc-input":"^4.1.0-alpha.4222e148","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.4222e148","@crave/farmblocks-theme":"^1.7.0-alpha.4222e148","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.4222e148","dist":{"shasum":"3e720c2fa80263feea7d6ba66b5d7a26141a4399","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.4222e148.tgz","integrity":"sha512-L9gCOWobRFvSDBXBtJGRmSzEXIgKzIgyIZi52xq3HYMMyQa+r4ujdLXzb/VXZ3yV7CzrJ73y2CevS4OZhvA1sA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkGxWCRA9TVsSAnZWagAAaFwP/idfeDNg0XL98BJhCmQB\np26LKyXCtXvwxxqfI9HkhZ/lVpePd8k6xP64MWIeGW8S98+ViwFq+rydzN0I\n//io+sAJpB3BoNpX9t185RGwwD9H2jd2QXDVMgxeOMkByoB0on7Qj8LnM8Io\nJtw2NQXLxfP+30E6RXbq6HViS4FCJfYSKOD8zB6cPNIqpfPj7RBhN9GYe9Wq\ngJv1F8NyzRj5KjaEVhBaBHWvD807tqPaDjFFJaTQWsezjbS/of80KhlnPThy\nQuyrDeR6dsQq3FzSc6AdMzrLpr9/lhs6BmR9OW6X4Z6Lb43YgW4To6s9e3Op\n/5c/uzDE9exPGA4aBloTNwLjV/rkOyCWFiwO2LqL+7dKlayH3TACrE73Mu2V\nFGSE/3/dDQCdSOls532Hr0XEdijwaPBFSvzg5mbEue0dxBshLrbefC77KmdA\nrbykVdQp8s4uy68KpIjP7wkS27nk4/uwhttVUj2I5ulQrFpUyZsHcudAaK/T\ns2LkKrbO9uTglCPqZrqCW52nb02LSenQfoAUcyO0yd5XlcyBwhF/3AMypkPj\nKZq531Y2DWGWqCqtEQFwk/I0Kk6khDBkVxXx5a1Z4bKV7q1/yRDasB3uRweZ\nGs1msfqkzvYgOvw+aoOCCgG7tZkGoVIHqGpgEZEWyFFRae8dnU2LPvDANONO\nt4xc\r\n=DbIu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrHY9kiqU6WuQxSfnzRraMSAa5efombvYiFDk7QmG2HgIhAJHT/3U779GTxvcq38NdcB5rWqwByD5E25ux/fBT363X"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.4222e148_1536191573398_0.8750512832149548"},"_hasShrinkwrap":false},"3.1.0-alpha.029d6c67":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.029d6c67","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.029d6c67","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.029d6c67","@crave/farmblocks-hoc-input":"^4.1.0-alpha.029d6c67","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.029d6c67","@crave/farmblocks-theme":"^1.7.0-alpha.029d6c67","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.029d6c67","dist":{"shasum":"1b40116c98e5a1737b74b3dd69cf4f6aafcfafda","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.029d6c67.tgz","integrity":"sha512-fsd8lFEikRsqGDaUNysH9WmMCjkkuwkY4Dko3cfRjSRwc+GH+ToTPM3+4pq5Tfecp4RWvRbxJApcUSYd4mXDsw==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkTsHCRA9TVsSAnZWagAAmH0P/3RmzZ7NOe8EEKTeOW0W\nHDtgUPCmhdGojGx5Fedu2fUNT9wZAbjx927p6LTyNqweWbrKoYIxd8vsUBSu\nLDeJ0e5/L54Pi9NhnSbcsKLalBpP0NYChnjU/mulhhd/qHKfjos/0froJh1/\nL086RbttrAAIKr9n3ArK64FQsAy5DyA8semKo6lt4Ng32lp5TGcVdup+DgOU\n/TKPkPpyg1NmC/IdfXIXsyLwAGuirHha8nn8oGvAeK72wEwYqy84rP+8DC6i\nprcPdeXN0lcxOGpN1gFiIffMuMMTu1FJp3YnrviWAjuu4W6UC2aWymeRAr/R\npvj0ac/N4w5Ijh3f0XGSL5oDsFdQzjKPTfjkveVrq2FPl90unx9hkj6VsWwY\ni7iAQ2JUgvxZzNY1jJnZzjoe8TLudcyVl4eevuA1p+Rell+I7qn9IwLcmziG\n82xUJXLrm0k9k2FFv8e5ijb+CbS0N1qm+w8EUlanERuFjHAyFlGF5jlTz7Il\nuB6fRIsI4ipsRpxAKjZHXdNJDVMSUrERb7cZcQwPGlZSdU+Z6659FHt3xIjL\nPOoDgC5DRvnLZcHsPGMr0ziymmhPnmuz3gBdzeetu+KEGw7ogZO+IPSeZeOT\nPYLSPmKJx3gn/fOgreiVA9HXWhxIQxmqkKfQow+dzbqzgtONcPHCwlS9vT6v\nPog8\r\n=I0tC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGuo7zqvWmBYA+aGYyVJGzGCm1I44zzRkCN7AXdkfdkAIhAPmM94sxhFkd/tdZGfpQwJq0adfePowLkHFE5aKkfMoO"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.029d6c67_1536244486872_0.39844818161187123"},"_hasShrinkwrap":false},"3.1.0-alpha.62b8dd7a":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.62b8dd7a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.62b8dd7a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.62b8dd7a","@crave/farmblocks-hoc-input":"^4.1.0-alpha.62b8dd7a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.62b8dd7a","@crave/farmblocks-theme":"^1.7.0-alpha.62b8dd7a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.62b8dd7a","dist":{"shasum":"6586b617f3a8a6e82a56fb4a5d0315f21e7896a3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.62b8dd7a.tgz","integrity":"sha512-iDYEnYHbVCi/V4rRo5ypFkn3fJqT9GSroM5qNciqnl0BbEy+Reoy8d0AeRtr2JKxn2+L6WzJk7iqORZ2hhus/g==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkT+eCRA9TVsSAnZWagAANAwP/RfYcWvDSQsaF1UmxNGa\niZXhf4uqhMRcI61ndPanANa5BonvlZ/0AbWdz8zL4bkj2GX8ga70ZVH3GDUX\nnLSCiDnHLJ0lzxSLdhs0bNmcUpEcBtgkcsdHUtoe8MQ3vrsH1mTTUThxQ41+\nekLvgpYaFkkefNlFTTquvfLayJq4IvRvJK3V0ewu9N20Z6eoOh3gjOD5b2TO\nKKJVxgM3a6QIMx8zM3cN1OpilgPUW6ONkDqk43HTN/X9msRefp0hx60fhfmH\n402PnfLiqqsTFz4RSWQLXjeHViVomMApmJUS72K804NBZ3/9zCQmNI+PPsFW\nUFm8qJYzQJexYgT9QE29MmUvK9g54CGEKVh6FothoOchJ6zhnH2qnUq/38oj\ncVe/LBDEdKriTLVZOA+JPtmsQCr5jC73Mqn+VDzIVKWHeoq8EpFK2+bU6kI3\nkYw8HZXtn0a8LHFG9afOhwnX28daciIPbfuF+MlV1b+rvwbpehHj95Ldsc/8\nM71m4Iy22x+rcXDV1sVJF1YIX3XbwD3vEvEMcBouhDlHbB7DJDBbYGXVbKfi\n/Zb1GZrvVXK7P6Q/1ySHXnS+v02m1Ir5yiDMaoNzxbvGQCgmZnVcWAA7SzI9\nBlQJg85p4wWqZqUt3rq75jYSMHBoJBS8uIhWErxANRgF+7gJRtAa3R6x3ldr\ncMbt\r\n=qiK5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNmpn/OrA0uAVhf5UPOb1M0szOBz2ocijmJPpO1nQ+UgIga6L5nNq5djp2QXAST+P71ER9x1ICUMpQ7bIlQPPSlaQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.62b8dd7a_1536245661484_0.08921444569866765"},"_hasShrinkwrap":false},"3.1.0-alpha.83e3ee86":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.83e3ee86","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.83e3ee86","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.83e3ee86","@crave/farmblocks-hoc-input":"^4.1.0-alpha.83e3ee86","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.83e3ee86","@crave/farmblocks-theme":"^1.7.0-alpha.83e3ee86","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.83e3ee86","dist":{"shasum":"b4b1ed92561e2c7173c9b8e663547ee17d1aeb79","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.83e3ee86.tgz","integrity":"sha512-oyE/9SdtHTPj0LsfUY0H58ciLhwcFR+WTQ+k04iGgSD91/JXEwH7MuVQV46UMjcm50TIYoS9Qyqd44hd3UEmVg==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkT/UCRA9TVsSAnZWagAAWRAP/00x3a9/GjHgYjWt1UYR\nHrR64NBLTkevaQozDh+TLdSua3vR01lqiyzW8FejkJZrmUVWPw6Vu/LI6fKh\nk9i29gB7kqPUcBXoC6wIKXBW2nvZ0su6KeL5L6AGEI2i6beqUhpSRBx1lY2R\n5rnV0DEZ8DNSkmrW1sOOKJBj2Z7Wk8SStIdKWTJQMicHhKJ1OTD5vEWOsPUq\noXZo1tVNUzMvCyhKPNBixULRCmU9NxdHHYWDDeGq+TWcqDxLZoMiGSXog5W8\nasdqcYB/geNOLBb/BibnlxeVj6r52o+TjeajN/CB9wXF92D0AlFQrywt0xgZ\npC92auT9SR48+VP2/OMQ0HT6Q1KeiaO9gO+BtMTmAJdAzzWulWPvrqHvSjiM\n5mN8om5A3rmbytls8svtW3TrcgiEOBGQEApRFF07oUZoR/pxfDlFlhS/QPaf\nWHbPW+Cn2lZ8bbbeFHXgW/7JgkoIgwqyP2uLg5z2vDYw3e7JJZrW6XEfiuoQ\ntwTCMYbXyymIlIyhmrGH2EuIjeiokNSjFq0Z4mk+02pLx6U98xCMstFrlCm3\nSNyCULh1D6aSFiO88kyUKAEICDc8kcJEY4e6xoPsp143VD1fOLLYH/lC+sGN\nyNmEp90LSkiyppExJPKJEYEjVaZzATRexMTYp0VSCBpfxz73ERw4Zqmh5JF6\nShGl\r\n=Nc8t\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgBu6N1vvDXrlUR6+vo/+RW+Wojsb9RlZfdrhIFnn0pgIga9Vy9PKntWa1kjreBQzU1BxGHzc2i49NwqU924Zu39E="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.83e3ee86_1536245715238_0.9188252198744546"},"_hasShrinkwrap":false},"3.1.0-alpha.a3bb9044":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.a3bb9044","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.a3bb9044","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a3bb9044","@crave/farmblocks-hoc-input":"^4.1.0-alpha.a3bb9044","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.a3bb9044","@crave/farmblocks-theme":"^1.7.0-alpha.a3bb9044","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.a3bb9044","dist":{"shasum":"d6170ff4dbd56f4f8ba478655708a23d0cc004d4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.a3bb9044.tgz","integrity":"sha512-PLsjB3L13YeivMGSoaN9FLy16th31gqcmBK23mlMnCAc78jaK2TmIhUpFvaP4bulKjyCDyEdSjBiWW9E15reQg==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkWqXCRA9TVsSAnZWagAAqv8P/iiLmFefoU3hsYzsXN0s\nzYfBmDkxtmxitdOiWir20rHEyqUszErhqSdnukQMDnTAi7y9q3EKm/slA3+p\nhYLGLrtCLo0qmkhlToUEsF3xCxEx4xfGGzIu+/pmdcw0/cLpiMcPq1BL5xnJ\nH0y3CfYvcMs0VmsvLb98ek/tGEdWRBCizwaf02Ei1F+bb9WL4LIBCpZoR0sa\ngbmQV4XAgrJ4om+tZF2dluMRsJz/8I3gNbsECnBfL5KPXHxsgrSvFmOb9+2O\nG+sikKKKW9PTyCowlZc9ltQSSFEoGi9ZtjBB4S3DFzAQYxIwUyGDQOIzOcIw\ndwZLpdDHvLjdqj8GoOd1wO/3vd1TfLWHa2ZRNhLQya73GcJPlsjejBuKvnv3\nut5WzW1kdawt0Sh3gswxJRVGhIE/QV0S5piVe5j3QigjxG4yJzgfS2OsZEF8\nOYcN1LEFUJgoe/nabinVwtbeo8WIUPmxYThrTyCFDKrERhXmBUoSXzGCqe89\n8i8ATYyn4ntOwC8sebgSKbgGtPWX3K7yyVCAtT6V/biAmE75GjGv4cT6jlDg\naFMF6Bq3mXBPF5rp7JLA6sVCTGS1/zOco6sAXfz+pwPwBRhWOybLZDKzmglx\n03knJaOK+3zuOcA5oYblNshW8aeujYGc8SsHkTC87+8FD+4T0Nccv0eI1jDh\njRwD\r\n=oeYn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEli1i8LteMqkZvgIspkOdG2+fY9dZETS1ttc8o1abD8AiBG/YZ03grFlkQ01xCyOpplOH8CkINbLzlvy4Q06Bb6EA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.a3bb9044_1536256662542_0.009964611562084613"},"_hasShrinkwrap":false},"3.1.0-alpha.e665f260":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.e665f260","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.e665f260","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e665f260","@crave/farmblocks-hoc-input":"^4.1.0-alpha.e665f260","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e665f260","@crave/farmblocks-theme":"^1.7.0-alpha.e665f260","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.e665f260","dist":{"shasum":"2e697b1f977de92a7680cb59f61b84a2627e777d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.e665f260.tgz","integrity":"sha512-4oBSOsuFBPV2dXfETsI9f29A+xYwx9rwSVcrFzRksEmapp7ZEneUMZxjTHvt6FDvsMSp1L4NeUoWVPotn3HO6Q==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkW25CRA9TVsSAnZWagAAs+0P/1OTDN9IPG353n0kBorp\n/iB5IrS13kvM8YzczE62Unxdqd+IIloSd1JCD998L/rJeTaPMW/o5RHpNurW\nz3/jZ4JXMGM8kKWPy5rOHMpZUbBUcpYnQvJJPpS2LCdnFOEeFrG8Yz67M3iN\nlylLELo9OR4UVbswiF/Njb334ETrNbDAs6jcsVZpEY4KTbWbsw5bdhVu+UBo\nPKjJ2mw7RJKUTL0bSnW5DrD/NbBKGpwIIeP6KaTV28KzdFGXPMljdZSAPFIp\nYbJRyXmE5sZsh0SiDHxrkNi6mc0X1l6ywlzfyHrtsnhkBvqF6iUyDVfm6agF\nA29C7d6qfdkU+nvhPVm8OUGwtjAUMB8xQhh1aswk0N0PqHQyapfglUD/U4Z8\nNtOxMbeoga+UI84VGm7C2Z893Y4DDNbeDCIU+0t7P91qSwj1CiW3wTeMD0/G\nB0lQoCZOaCFQeXdBOtis4QBWuTn1u/MEZ9iLLI5xvDL+nUNoSuRDETkpqZEE\nWtDVqaMm6eGGx4pKP/w/QwgcPr7qjBx0Dca8wrilD51fu6aV5YdrdG46YzRx\nzKRB2SWiKEbhziCaerRjwxv+ncXrtuOh0Q7HU6r9GdzKteYmuvFHLL8SNE8C\nVBGc0+xtWKTAEDYn8FvPLSDANHu3lkTeVOMv7r7lKZZbF+64Qmmlx8Pw4j5i\nM6J+\r\n=j07L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHfYNolbI9VNkI/YWipys805KL8d6buDKwgHj1t+kVSLAiAuQh7172sXVVt06cEwjh8wGS8/U3ht37L9fW2Qz/WLAQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.e665f260_1536257465079_0.4076137177991368"},"_hasShrinkwrap":false},"3.1.0-alpha.137006ec":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.137006ec","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.137006ec","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.137006ec","@crave/farmblocks-hoc-input":"^4.1.0-alpha.137006ec","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.137006ec","@crave/farmblocks-theme":"^1.7.0-alpha.137006ec","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.137006ec","dist":{"shasum":"1520736d31c3a9e35f95f06d89bd20a42a60a142","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.137006ec.tgz","integrity":"sha512-XJ+wFB2z/TsDolsWxhMdw1iCRE1Z9NV+ya7mKIF0kRJSNOKnb8oX2RiBZXNqy7ZLDvDCxG+AXF+v2yytJ/OvHQ==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJblpO6CRA9TVsSAnZWagAALTAP+walhcfZB5vAase2pBFh\n2a+CIaoS+q0Y1oq6wQKDMwZHaJ+QzGn/IDi+vn6bTsB5/jIB1B66o8lv/miA\nD4HbSIt2ixt8JgfwKaV2PZN5bdVsCXV+88yLmQpKivFsO0Z8xXUFSZ/6elhX\n6HzE2gJdSEzyUMz10PA//s9bTcJEH1TGnO7h9kL3T9Frkbdmg74DVT/xC0w2\n37oRvvMrKZGnwENxlYv+FBMwifjh9TEJECmFHLmkjNF/zrC3+0XTbebN8Byi\nWxoFigG4BTAwI4nD6OqUHzAcYhHpvTG+ZsnHP2fOqrexuK6SjrfgwLvUzOZ6\nNv/a25sOXlbVCsZMhhpMbXdDJTvaEc71BlRSy6iHrq4fj6ZshJg2xnnO1yvo\n5jkxSQoBkGGoz3gbt/P9qUHUWDjmqH2fqavBq9WFkslOMSydlf8xrRKvsZXA\n7mk+JRQzT2hEzTGr62JgWvpPrxAKNGpcTmHyJXNKRyfE8XFkrF/NqKpZ9KlB\nnAMpENnex0yhLrrNBVgXcCGefqp8SRuWdeEc1qxU/CrqsPkt/SB7X7KLp1rB\ntvUVaVKVsawrIaPbZxg934vJzEVfKVqS+cntSr+qpVZWaToOLALcXRx5RzeL\nfOUdKJfubZcND6JLpPI6cdKrEUvFaRL2hS2MVz5xITfRTKTfG3VRgJEUzziX\nZQ5/\r\n=mmhq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaPxLUUAVUyrfW5bijS1xOZpSyNuqU8nTB+8kJcvXnywIhAMFIUHVXUdeREciir686D/6kyKWQgboj0HpOsosb2D7l"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.137006ec_1536594874289_0.06460378392791166"},"_hasShrinkwrap":false},"3.1.0-alpha.16b39aef":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.16b39aef","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.16b39aef","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.16b39aef","@crave/farmblocks-hoc-input":"^4.1.0-alpha.16b39aef","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.16b39aef","@crave/farmblocks-theme":"^1.7.0-alpha.16b39aef","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.16b39aef","dist":{"shasum":"6e0ac3a76ed88241b3a14d0994a5f4fdeedacf3f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.16b39aef.tgz","integrity":"sha512-kmYFVBwbj4SgQomkKr5jo2+7sCKkyhdgF5hZ/Zpk+akCAI5m4ZVTKum7nZBDmgs9N1yxaIf33y35ri/tLv6G+w==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJblpcMCRA9TVsSAnZWagAALhgQAJoJDEBW7QaMD+omQvo1\n2n0Cp9Z+S/HenFm1LawaO/t9uBmkAZB3X6ftO4zuyccQPRNIgLciC6PD7iqg\nn7M+V68kxhLSYp5riA00cmR9Dk7UK4S7n3f9K/3lOCVNKbPxImqwTX2SN9pE\nirRw8jnc1UuXIlxSG39tl1cChew8AcMoMKgshFfvQgYelsxe7rQ4l9bL6mQF\nFpTIkRXvvWxlEJeTwvrxAowqLvNVr2sJboDxDV1o+L3Pm9ikLE9nv80v4bj3\nPet9z29+K/gczaPQBdxSs+HijvgjcyWCrdRuwvzznWsJwJ2YhF6S0o9CgYCJ\nhs9BTgplzIJtDtJ/1/MCM8MxKAszJTGjLHpVacNqaFvcP1Ja7v2day7Tjsn/\nuJDkwY781ZhTsR502PkkB+OBo/liNtb2zxymlcahL9HLtYb8BeIRCS1s3BBe\nmUv/2RkH+3djHTXNKs2d4wcbHwaMbh58EKoYYyWJU6n5ZriZiXiGbK55oLcB\nKxdieldAjVVZtAzhQNvDvvvSztZNX7K5sopxfd41SDAbQNpjKMMp6ujbh4ZV\n1Ut+UL4xqRhWUpD4cLiAZT077QlA5nBxcpR99wy1eUmfPtllW9PGF5GCyID+\nTq+TLTQ5H0JGnK7t7FLMpV8MMPrsHCSSVswoQcPFcQD1JqomBhzNUguDBgfC\n2u9w\r\n=D5oj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDyuJpMM8hR3Y5IcGvxIaxOlJ2JGwjuaf8gMegoLnxwYAiAP5ACCaP1joZyncZJ9V61NJ27AbzrpynaC1F1AoCUZCQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.16b39aef_1536595723590_0.5056413041571688"},"_hasShrinkwrap":false},"3.1.0-alpha.ae5fc0ce":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.ae5fc0ce","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.ae5fc0ce","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ae5fc0ce","@crave/farmblocks-hoc-input":"^4.1.0-alpha.ae5fc0ce","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ae5fc0ce","@crave/farmblocks-theme":"^1.7.0-alpha.ae5fc0ce","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.ae5fc0ce","dist":{"shasum":"b9bf3b7d16844f521f31637b924c06cc5cfa59bf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.ae5fc0ce.tgz","integrity":"sha512-Ro3Zq9NSwW8idOhc4O9jxVwcrxCxjVsdCP76e8UX6UoCSE97fkvR8RK36tBpT0Fp8dpTHanCj/9bt77kHSXWmg==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJblxjdCRA9TVsSAnZWagAAmp8P/jJcQxZ6AX0z6X4Q2FKo\n6Ht6FxUbEP0I/C/HBtQ/yj47PZJhFDyPIuKBkESUah6aues1Bd8UegT5kkVa\nwLYPV9dcNt5nWTy+GjwOvMXZrFe4z8Pd0gM4pOq0tIJoUJNi6duldle950Ij\n8hmYYYxPWZiPVEPPRseZiuWU+7vbl4jwtIWj0RkHehGBifvN5sHTeMEbgpzU\n2nZQkW4TLJ5iFPvDi6G28D2RjEKm0r0vsvkeLQSafJPXcJU4F82Majf3bS9M\nmhwZj57uFQWX5CRD0CiJwRWfaqLjsXkf4ZgPtkqJbaa3YCURwmou5gEslgok\nRt/5y6LAnvC7V43m9k37AIKM/XmxBtGNsIHjytNtSLF29+8bhbi0LZDE/sSH\nnORbj871IC2Gmg/JouJp8wzWfXoDuZnLAt98OCR2iTv7YcZEOetKETZcPZF4\ntYCV6xjTwD/eeQzhk3GF9iPFvexPJut6u6rzRFDvVUWblV7k8Gi7lqsTOpHJ\nDFgk5URzhVIjiOgynjh4+IM/7N68wmAGTSYlT5yI+00kI26PxumpHtHMCBOu\n6TNcnhHaTyYHD8GPt7qf7StqYMSHL8coKzxyR6hv1LuVl3yqz7dYkwHEVlG/\nmQedBnLIBosNPg3B0Wb5TIe9A93/wrYpk+MkonTyMgg732fhWu1xjEx/l4ym\nOBN6\r\n=2i0z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgHqBUmCH0B7VZvn8d3/DpEI2Dd24xEn/FDQ0Q/wxzNgIgDqsQVyxbtjd/pyZxgvl7c7D7vHYadyiy7/6hcjqc4uU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.ae5fc0ce_1536628956350_0.5082397354764667"},"_hasShrinkwrap":false},"3.1.0-alpha.09d24d88":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.09d24d88","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.09d24d88","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.09d24d88","@crave/farmblocks-hoc-input":"^4.1.0-alpha.09d24d88","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.09d24d88","@crave/farmblocks-theme":"^1.7.0-alpha.09d24d88","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.09d24d88","dist":{"shasum":"aed95d4b54cd07fbcdec2caee2b5097eafa23b74","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.09d24d88.tgz","integrity":"sha512-ULxm1xRCxcWcxxvam5XSx7X9bgOiTRNXFN8bIyWqRng1vlBG7U9lN4mJ58llHYuQkegG1WbJDYaGE6U1QLIGww==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbmAY/CRA9TVsSAnZWagAAcYMP/3fO3X7IuFKq0zqi4u1z\npOM4caxvVIHK29i0SfJB+9+ZsykSNPsYQt6iwy26wx/YwvRcPi+lyfaZgcPx\nJKLOutj5KHDXDWjkqsa1AfbaPZFXrm/ZOXtzy044Tr4/nNma0NNTqJWQ13k6\nNE7h9c9/iN1cf6h3lzVzu6fkHIqjJnuY1E1Ca2jhd1Oj2o5A84UYhNHt33QE\nJOeBElsFxJpD3G3Luv+kngxoc8UAZihjt4puag5jR+gdOsbrOs/TWdP0WL3m\n2hYb8+AzehY0wjwImwPEwNmofSWPReqRO+kwzF3oLufJFSioknnt9zyLthdr\nKkUFz31qx0H7sE0nS8p3RopNZyil71v9iwLyk0BhVMl5+sUgmqJUW06hxecW\nfpZJ2JnG9RbSgqyFiapmqX+YPhiySFZTQQCPwYWwroqDOGdEo6Z5/f9eEbX0\n90Rb0YVcmTIQc/WP8/3HSwoi8S9AnyF0V3r/JX348/ek83ulf5sq5tVWxBOt\nNsaFuPvrAii1JmD4H4TTOrR3EAW32CK9X4VUtp3D+TlgEtipiBGH1J0M1i/h\nY9IwKkD4tvzUfLbfpFNG/mvh74C7ZVncG2MlGPNZF/uRmhAeRoCGXSA0Nyd9\npeDUzJqwnUs+L+NXL2TO0rnhnqSVfLIthhflZT3B8T1+1AIUJKtUKvaK3T3O\nb2Nb\r\n=9Y9L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+PXPi6XHNrUFFwreH4ortEZpT+OxexXE13SByhXHVxAIhAJ39PIdwDnd0Cz63kKTrZjI5OV+5BeLxKP/nVzXJQ1c5"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.09d24d88_1536689726394_0.8409521001394846"},"_hasShrinkwrap":false},"3.1.0-alpha.2405e027":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.2405e027","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.2405e027","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2405e027","@crave/farmblocks-hoc-input":"^4.1.0-alpha.2405e027","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2405e027","@crave/farmblocks-theme":"^1.7.0-alpha.2405e027","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.2405e027","dist":{"shasum":"68e09737e115ac255d6ad61bcfaf5d479db911e8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.2405e027.tgz","integrity":"sha512-IBV5DK/fuohCz9pUPdnZcyGriNQTA0m9DUbImi0AGaz00fP2pjSgVEEN4VTi63ClRosmSNpoBm/pnWpFLkkg4A==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbmVZRCRA9TVsSAnZWagAA/DwP/2Xsr+jtwPQ4bboh+9Oq\neSV8+cnMDLiDSkj+yCdwyeB17e9RV8Log51Nkk/moWLXwPABXf0HptDRW1e4\nxqVe+TNDb+tIXgcfOY4KMQ+pn9Dyg52eVDkueVCEmhEo68HlcrJ/qJFhjo/R\nBexmZ37GJBCwPjI7xIETF/IttLKwF2dzvfnyp1EzD+D3+6dMv8cW/v0waO4f\nQV4B69MDgXSQNWE2yWN5d5jkfdjuyx2R/HIEEAd6aaT3RGQBSCdNpk2i2hdQ\ntze9NSpd2i5dl5AjXcOxT0/+krlVhfZBlEOBWGG5MM1dZYJ9bgmt81xDML2X\nLnHobVUFflPXnqTL7G3JldnyENjjDtP55LOeUj4KqHkwacxEnY6hD7XEY3xU\nLqQQcKN0Ssc0d+1og6t4uWjGPdg4cCpEfdc7eNvZaaYLon33PU2nfsgZWx3z\nZdSi9FYF7mMpEqqR4frM6CUWpn6j3nLZro/1SFYn1IPcFmiCW1ny7BSp9EQT\nnQJbPrkmbB+xfOtJ2Co073wjb8w7h2xl+Kh5tPKJ6LbV4AARPsUq/M1zKPtm\n/J0v4Ed8uh/y2TasifVH6ndU+VtAe6NPUaWyp323IIiCovtl5aPVzgLy3SWs\nMMnD5L6nv86AnDt/kdczon1bWXKDn1T7ynMBkHcJUQ0NUk5cysPWd4sqzRYr\nmt3/\r\n=1s+f\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDhpnuE8sox9U3RE7jWCYFMNABHdjUJGTKC1sR8nRvpCwIhAMAnqC9ZqLXoypjDa5HqXzboMBVdajRfICbJUN/WeGQG"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.2405e027_1536775760673_0.9676154603947147"},"_hasShrinkwrap":false},"3.1.0-alpha.3793cc42":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.3793cc42","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.3793cc42","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3793cc42","@crave/farmblocks-hoc-input":"^4.1.0-alpha.3793cc42","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.3793cc42","@crave/farmblocks-theme":"^1.7.0-alpha.3793cc42","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.3793cc42","dist":{"shasum":"6a3d5f5f59c411727299b37d80fd537cd350778a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.3793cc42.tgz","integrity":"sha512-lkVbSWQhTt27tgWg3fAQd++D/tMFd3igYHj4K6nKoRkCNrg//3YAumFt2n5hs+g3nwN4gzLQKCObIwduG8C9TA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbmWcZCRA9TVsSAnZWagAAT2MP/RkXoKUY6Y4c022/XuX0\nmpDqbaOxtP2gjJvb7WeG/rhjTyL9azmgLykePL54Do+tzpAYQ+RqpFDOQTKK\nEg3ZcOmFxydIcvdnn2S7LTTIt6r6YIsv8qpZKJgzhcKxQIrC0no/gnD16wNm\nLRpQ2cIq9xC3fyvUz5zjVYYwpiA60ONIXmyJMerWUvOmTt1KVVsCdoCFr9wo\nS655u1y2iuSXBbfoh3B+2BXtvLexBTdIim/OuWTP2kvmr4n3cSnARroL+gkV\n0X+YKP0cIwJVunX/trSH3ORth9XW5TDTAZFbUn9B/uXW9MBOA4uz/YEjDcP/\nBzoMGGXUL65rJUR3BV924kZ5uwDhp6YHoNQShdL0fH4DXRwdn2YejYFWHR34\n84nKTXT/Mus/2dGbuF2qywZWZ67c+ENEo21PW2B/cz1UjoX4Bafvu5wBzsLB\nShSOewET1AAlN8oKkAhGQhq9hSqMeNlt/8emrtBzLEZUTK0Xk34hPZnjyyJj\nrCmz22X2AARdskt3xA2A6l0Dkrur0ogCCZWrAxPVcqkrVv8dP8n5cLCA6tDn\n+eGMWpfYyA/AB+lQDj5acunZrWrr4Q62yRJ35pHKg7MI6O3FHbj+TXy+DA2n\njV/9UcLDCA//3jkNx2rGMdMWKYBJo/zsG1L5BrB8p13OOZ1CKJNUa8proZDE\n2Lj9\r\n=mzbR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4uhF1H0M4BGnGocotLgv2Oa6WAMVzdyR1u/BLA9YsRgIhAKSjMdNvHdD6w8gerH2hbIp93d8WLDPepGsqCBGwW1ib"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.3793cc42_1536780056775_0.00287886380078195"},"_hasShrinkwrap":false},"3.1.0-alpha.de051be5":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.de051be5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.de051be5","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.de051be5","@crave/farmblocks-hoc-input":"^4.1.0-alpha.de051be5","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.de051be5","@crave/farmblocks-theme":"^1.7.0-alpha.de051be5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.de051be5","dist":{"shasum":"f2f1cff19ec702e5d190b829381c48e1db90397f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.de051be5.tgz","integrity":"sha512-3V8Pj2Z/ni5n2n0X9TPCJRirl8mbapV8ezgDhOxih0UQ7+2KqMGoplrhXplCPJouqKcQovwh4l+oJNdb0tzhLA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbmW+yCRA9TVsSAnZWagAAYM4P/15mv4Xyzkl4kbbJ4cot\napUsnjU6Mm6x8fL/z8DtDG1pBEasYBKZHj5gxocwElNiV/xldGQPmHMs3iDf\nP6nh53m6cENwpMUatz128oVZLC0rcOlc8w97JrFY9Uz+33qxnyhWs6eO7JBO\n+Ylyb1GEMy7lPqkLzyjDhlLWhiHt4VHwpd1PwdT8sVLwMUwrJVZI0kIVGlSC\nuPhoKwzf7b27ARH2osDQl3kxx1QMC3HORNEVwv6gSGWMmi5iPZ4weZIVe3gv\nDUzcK3sBDmI/5qTi810i0yyxkwfwDOePDAtSp/134BDYWbeZdisYTlnZOu0Z\n2ymUfeSMUAAzCIWQL8VgWLVy+biIoRJlAPIhZkBD+FI6V+iRdDl/PWGVbwPC\n+9fH+Z7YHDfp9d2vJy3iRsh/bQ8mrOtclKgpaFoO7h9DnzA2J+wCxZPDY/MA\nqTi2SHoIo69g7MAmDD9vvhpudoMnTALD5JcoisxpThZIxsKqbiEwS9NqT2Ro\nETB7CpSfx8+SKPUhQG25VlUT3olNk5Vrf/8Y61bFCCgxt1ZIVIoLST6oBDLi\nC9w0hi4Rpa2O+YDRY2Xmg1H+dTWcY46GmsuyUIIaY3XryLnjnb6PF6FvPk+/\nJtiACPV29n6OjB4/9WM9MDpuVbbpq7mBJ2qrfUuTiTf1iWXpkd7IuvlZLWXr\nGacE\r\n=4eov\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzfYUxkNbWGixRCjSBM1/OaLe7ejHQn9gdSS1PY80PsgIhANuV360H0k0IH5zEnKWop2AN/wVG0AzE0uO39W8YNC4Z"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.de051be5_1536782257482_0.6506887013047591"},"_hasShrinkwrap":false},"3.1.0-alpha.fe90344d":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.fe90344d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.fe90344d","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fe90344d","@crave/farmblocks-hoc-input":"^4.1.0-alpha.fe90344d","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.fe90344d","@crave/farmblocks-theme":"^1.7.0-alpha.fe90344d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.fe90344d","dist":{"shasum":"d021501786d5c816a5c6803b2947bd9c5334cb4c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.fe90344d.tgz","integrity":"sha512-omAlcLux2twjyjzVjtB8isz71jZUIwiwhAku77OWC3OAcQ/Ktl+2Zw8nNBecHdqdjM5oH44TEcmtOn1PxzDB4Q==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbmkgZCRA9TVsSAnZWagAA2bkP/AoMLGQMCV26bSnFGh+S\nZcp58vvWMySPr93KUdtiPuEiCp3kGd3pKAn0KrbwiRTYjkcY+dg51jvAiRZt\nXel5JFa34cxzae6PlI/coOZFXY06a7xM4u7B+NtWD2QfSTUCIe15SQ3pIh5L\nsq6TQ4D7A1rzAOOiGV78OuscnLKXBDC72FaJkiOAQQDHq4gEzw9msTW56E9V\nZdqgVkFFaIRtKqz4jANMH+Wqm9lCEOWK6rd//L2rTLMYrd/1DM6iB8mylArr\ndrBOkgm27Vuh9JC2k76cnuuV+nVD03c9yrzzcZ6Q2fldWrjhJUlwW+37700A\nAjSJt2yjlUhocbpKbHULYgKCYz3JKiwRXBc3FxH+dkEXrq06pJ4PC1bR7ECo\nbRLxC3oDL5vQcgE4C9dG+tS5ZwL0WQ0vJlt4XQYMTQ6ks0TKoPkN32V2B8PF\nEw+vjPAxBRXMRJO1n9MsENoNegEsh2A0Inwr4BpbuohS5k07rhKsqIIxXgBs\nNIcgkZCvwqdAbySAH+aqQIPr8ns04BbHG1LHRXM67rbjfLGw5qnTCY9fqj25\nUq18BoCHnBwXr3/yqqZZA4ELhWhAWDaM8mWm0ZTYYS3ZpZUap3SWnOnWnmC0\nWMpjSTJ3DVUo8Hm9SZMasvXBubj6fO3XMSoNBqwxL2q+Nag+18JWJGpTCNJP\nf0sK\r\n=h1WB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBvuxdhRTJqGCQ824AajaNt/qAznU2zB9RiiuVJPi2kpAiAuKhnJ2p/rK1BRxtgcDEG379hmgpJ/oEkhV2usCgD3FA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.fe90344d_1536837656282_0.838336811499452"},"_hasShrinkwrap":false},"3.0.2-alpha.45":{"name":"@crave/farmblocks-input-text","version":"3.0.2-alpha.45","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.1-alpha.0+a385bf6","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.10-alpha.0+a385bf6","@crave/farmblocks-hoc-input":"^4.0.3-alpha.45+a385bf6","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"gitHead":"a385bf6d7fe4191dbf3700dd62bd1ab2f19b0ab6","_resolved":"","_integrity":"","_from":"file:crave-farmblocks-input-text-3.0.2-alpha.45.tgz","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.0.2-alpha.45","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"dist":{"integrity":"sha512-uOMKUsOxpF+AupCV0rpQH0GRgyKh5NH3FwpgHYgjU3MEg0zJqNWTnH94o6/vL+S5SOO32gHfsVPR8q6jKH3kPA==","shasum":"eea3331203a4642d7424fcd966b8deef637aa2c3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.0.2-alpha.45.tgz","fileCount":9,"unpackedSize":47795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbmkzfCRA9TVsSAnZWagAA0wUP+wUic+Io9VxKkR0R2xJs\n6nyvxhueWoiL4dSz5KSxl0xR9qcAaJK/MMN39qmPb9q3HAJe3qCZ+sIFWece\nVK20dHVnMTHYu171mduJGBFr73AgoWaAwQDMInut78qbZC15sPUrhXN0r8qr\nqLscee/6rAf/ODWMZzXtPUehITfG2m3dv82ghYur6qG4Bt+NRoGpIHr2JxZY\nhzBT0TDc4XpLr3ko1roZS7MzVTD9nQaNY0DuFDHMe8IDugg3Jolex6tBXG/e\nom0w9vR611JjJpQqf3LrTep8J0gQr0l267V1uvPKuxV/pcn01xeMMHFqpS8m\nNfOPg4m9IScHpsrCHgs7B9AhVYVvhOuDVCuqxmT95JW0DPS7/w7W1kdoe/gF\nBoaYU/lMwFZ1iZwacpak1T6KVuuHz6hN/ajH+TOSzIe7gYc69cNHwHDeaI+w\nUHe+VDS+xN96mOIzxK7xBn2bs10iPWhb9al4qiuNJ5lcxqaMySsuCQ/5qeSY\nqOwuVLA/7Gu3lBVP2GIRvXhLbv5yRw5XhiIX9CQwa/u7yMuNB7yQaBe8VMy+\nzr9+9lSl2wL28sIKcnQAwYG70xEIyhplqaOnu1KyyuPk4Xl/VhuPAM9dWJux\nr//uWx8o9K9mFkqvbziHMnvrggbkMG14YMAzrs4sbsuEZk2+9iJPJAQ2uD++\nrMYs\r\n=OaZo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFzg+zl75WmeSKuullyyWIZyNiPpMDXUN2F8io4h4UyAAiBEQhNKBlDNn8Lgq2HUoa8i3fKp84g9UqYVVzm2KK2Jqg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.0.2-alpha.45_1536838878953_0.9101987931399285"},"_hasShrinkwrap":false},"3.1.0-alpha.6aa76345":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.6aa76345","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.6aa76345","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6aa76345","@crave/farmblocks-hoc-input":"^4.1.0-alpha.6aa76345","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6aa76345","@crave/farmblocks-theme":"^1.7.0-alpha.6aa76345","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.6aa76345","dist":{"shasum":"c5012c57dff49930147f8a4db109cabf0b7162f0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.6aa76345.tgz","integrity":"sha512-3IbrTVXUfRoQrtFNjHhs/Gd6x47VJXRXkQq9fW48azg9SdRL9+mZUlEVWyibnt60HJ2ocGJ26zKiJO1/PliPkQ==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbmmXSCRA9TVsSAnZWagAADFUP/jV7d1boSZrQHEpbAyut\n5PVlkxSDO4kfrTuu+506k/4krPUc5zmVf9wpRMjg5CYjRnqvvZwYTmkKP4BQ\nqLFXqlViYOFlBzQsbK4N/5fZIHV1LaMhW9v4GJK13K4DA6ZEXyTUSBflppzZ\nGM713HUxxchJPzdJhdFuSgeIc4m6i2ssymErtBEn3LidqefnwEd62AYq5N+G\nyZ8UO75mcQ0Azu3ggFiQA0R8MfC5K/QqdAeqMSUeQzTHn2YsiHcYC3CFTrvU\ntlPIfDpY/Qwwx3F98Pbrt+ZRjnQyYwPOAQWneq+h40Kdv9zlzx2PqZ41BTJr\n6Y9WzKRNn7SavnmVxTXC3ph3nmTSWC4PIUyA4uRio1Yr7ZCxUYrvLNOivkQb\nOAxaEYh5sH161LrbBRaY3jloR9J2K1GUrOVMzrOkrIkNrP8LHTnyOJzEtGLc\ncJkQU4Jn1FY+RkaosjIj+EwTqvnha9UI2adXI4n7p7/GPTN7nuqp77Vw+nz6\nNPwjVuX3xjdL9lZ1YNUQsoTqzCPOiiTwEr/a7YPV4ToFI7Dknt8yJZEC1OJy\nq1vhIGXflWCaCnCFhBM31wXsDEjtMXdRNFMDbSDlLUFXVPhaRaFwwtnXAW1+\nm/lNZZUOVn3sqif1fewZ9TodW5DAKkj2jdSgMCq5OECRMkM7Mfi7F3qywXgk\nC403\r\n=86It\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6WSjhOay/tjyrrWTS6387XqLnub1Ux4420tEeRZcoPwIgcn08YrRbvzh9cIERfy3hKc361Qb7rv1w1GAFLAGUjSU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.6aa76345_1536845265552_0.1565231193050045"},"_hasShrinkwrap":false},"3.1.0-alpha.d4208acd":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.d4208acd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.d4208acd","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d4208acd","@crave/farmblocks-hoc-input":"^4.1.0-alpha.d4208acd","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.d4208acd","@crave/farmblocks-theme":"^1.7.0-alpha.d4208acd","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.d4208acd","dist":{"shasum":"144dd02a2e51592e06b804aa5911c99a73a23171","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.d4208acd.tgz","integrity":"sha512-aiw4/3cPy0faofICeyAqcKExdfqNhzccn3u47r5+t/7lJTdaIQU0uUgq1rf3cw1I9KnRIGzbdqMgt1d0KMBz5Q==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbmxSQCRA9TVsSAnZWagAAq1AQAJW24BHjuxKTWnWDFTJB\nVADesoUmcAcuQ4KCQ5nsE7cmwkjfwEswidXVd77TIRwOCtzhHr1+Z4T4OEQj\nshbeaShzOGQFsvnoNM4GLaD0M/fyGZiV1ndmKi6SG7nUgw3mNwbDDIgDITtO\n5M2PkxD3o+ZaOz4uqcn6WLcJlrMJfigrG20tVfuI7lkYHBnEkf3AW/hwCh82\neoO0qx4YKd4vz1s0iqDOMKa6l5ESXC4U8HSXQeQ9zZM4gsQD57lF0GuG0FPm\n3UE2HaDfaD5q3Ko342nB5mvN1y4pXNqAzsOSoXk95hJ8C1xMI1B6Wugi2Poq\nP/9IVsc6RcCePjliOZL/7TUtvusH465DiCETK4nP3czRoOiqaZ3+d/VTtx2v\nw36o3tP3dbZlTO+yQK53SeihPIN+Uyemmpy6BhImJNYsYGSgBmhNMZt/6WUT\n9zMtj3RJJl40y3xrFsPEtbEs/MCg9jJu0rbw1FtjDlrV0eMrJ6GF1bPTrZTi\nB+hWUF/7pKUxLAgENzRZMsuILfMakNKAsGA9u6QhFSIYuyRzI6qBAgY+YKB8\n7bomiimQ8tk/cSKHdXsmoINLY7KEYn2/VlJbRzX7asdW0MZdpbx4wBx5wV7I\nkj7B1aV69yfQIj5Z71xGfkBZIX2DDgdwVqFqgcUFYgK08dH1IkaJ0J+/4B8A\nxIe+\r\n=VQWS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/UoA/nUhG+tXWJ3nXSlBR9+Vs27EuRkgiq3FuKZrsuQIgJKjPN8OdhAXN0Z/GCtHSW/OXgRfEP1AB+9dJwCIhmEQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.d4208acd_1536890000138_0.4129178718450832"},"_hasShrinkwrap":false},"3.0.2":{"name":"@crave/farmblocks-input-text","version":"3.0.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.0.3","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.0.2","dist":{"shasum":"e84361d4414ddd05a162358db72039241921eaac","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.0.2.tgz","integrity":"sha512-0pB7jHJcNnF9aIGgGDnLQG5bI9fchfPGk2yidxo87eeDgMic0/N6pVBfk5KDuS1A/RS0rLRn19sfocZf3rZ9og==","fileCount":12,"unpackedSize":47911,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbm64oCRA9TVsSAnZWagAAvHAP/0YR0VioNYLZkE5MkCSv\nSHyDMhvsmWckJpttbKjb+FKvHebXpxDoeG83xkysC8fHWdXUosJ9qu17bf9E\nihAX7ESpMHopgHIosR71Iq1HjzEzwndVXX1VNaYmTQXHHiEN0vL1IBElgMnA\ndOXux1BwZMFIeVyuxC4SAR8RKYTe6zizTlLX8QTC/uRbUNDHj7MNC1Nhhc8x\ngrLmYdgM8rtnW6T6hHLNuMtvB1iFrdwMcb1srLNGBouY2DQr7FAazioy82z5\nAuNYCrulSOCYqUiNXUsZW+5xx7HDHMB8ruxAIdVegw6hFVyyokX+9tECdtFd\nw/M94QHMG3pL/gANXmdYw9sk9bsVwEZU7OqfQmYFNrYPj/5qiiOuF+hJOr+D\nJpaEhvBLm4+RAxqpeCHJqZ9ajkiHEhWIysyc1ZLohmhf14yNmp/G+Mrt3fGD\ntG+hIZ4VKJmog/csklIZpI9mBo0G7V12Hn1UdhXhr+g6vnfGflkZgXhSPM0L\n0tKxwdTeaQTIfJUWg6k0YcAW+Antdh1AHqGuRdml4DE3D6h9GGsHHwA2o1WO\nJelv6UjT+SLgYjulZObnh0I9RPkXfWIobURVjFPxJ2gxzlZ1nWli8Sf1T3RW\nNlfa4lNORh98LLJJXshQzTfHTdJFmph4hnp/FKyhil0wKNqxp8DgSSO1hNU+\nfGOZ\r\n=ijHK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFQCGnO87xsrccd+JkOBLsdIRgakoDuNSwiMaP2VoZuBAiAbaGVidNXT6Datqtx+oZD1ilmZQNM3ymO2H/RjgG3pPA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.0.2_1536929320282_0.5302734291646944"},"_hasShrinkwrap":false},"3.1.0-alpha.8902dba1":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.8902dba1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.8902dba1","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8902dba1","@crave/farmblocks-hoc-input":"^4.1.0-alpha.8902dba1","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.8902dba1","@crave/farmblocks-theme":"^1.7.0-alpha.8902dba1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.8902dba1","dist":{"shasum":"1922cc3f6ef9c24dc985e4455cb7509421e0093c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.8902dba1.tgz","integrity":"sha512-PoKCDifo7fzl36SHuXT8lY8MXcKS1VqTwxct2UOyGFxjHvEFXOsVQAxGQVG+X4j91q500XFuvRKI8P77d88CCA==","fileCount":12,"unpackedSize":48045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbm+VICRA9TVsSAnZWagAAUKkQAKLX2iUAp7pG1Xi/yr2C\nG/zxquOoIOkK2Zx4eeJubF0PGyauJv5SpPbnB4YnziCtl6YdfUy88gCdiN1B\n+6AbKv9PFq+EISQ5Xy37rciIpWUiXNQaqsmNVDOFVpl4VduEu7ee8YC/nzaT\n2erse0G21R8D3+Szbt/+BJkaaRA679zRcEMeUF4HwWSsdqTYWvBsresxbmNO\nP+8AsPyrW+gmy5G20Qf0MW+BkQs0A2EmGXoesJBinAkGh70xYWGjszF1g4pc\n6VPXVvrFiCp77SyUlWzSzlEpiYHE9MjsN+bb+CfHDvbbML7MtCPd5sMPX51X\nrRguil6yUqzZj4XITIuekZTGzWJ1UjUhfgGXgLbWdx7iFW/KGpG3pZ/ewD3X\n8bGX6duHUj97yG+o88TiyP9UuuZD305f0ZVt4Avuij4ycSLKbFN21jYP48k+\nPBDxvr+dwup1KLFKw04DQESF5xCpVPEGPIxsyxtSwX6EUtPR5Te7me7n1C+s\nI2N558QfUwwM4hcGAjzxK6ZitffQeRfaPen3Zv++YUib6ho2X+LwYBDGfRn0\nGdFG9Ni3N0Yu3wZD65AFLhhPW3gXqH1CJ8OZD/IF5cjA9JONlQMqZt9GIo0T\nq4PwG4ZGsYuq5acj4MUUciBumWiYH/J8HVKULqkDQYYePQMrCK4Fqql3ObxR\nUDhe\r\n=ZL3i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEDaK0/PbVz9rqtWPNjPt+LbBiyOk6oq3i9Y2qi8EBpZAiAGVLs7uyHx+knDGpOK8s+SXFBBJw40lwiktewvvvAq2g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.8902dba1_1536943431448_0.5949621810994481"},"_hasShrinkwrap":false},"3.1.0-alpha.5d9f5cf3":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.5d9f5cf3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.5d9f5cf3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5d9f5cf3","@crave/farmblocks-hoc-input":"^4.1.0-alpha.5d9f5cf3","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.5d9f5cf3","@crave/farmblocks-theme":"^1.7.0-alpha.5d9f5cf3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.5d9f5cf3","dist":{"shasum":"8f26ca0c9ddbc2012176a358e71c2c551351e5ce","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.5d9f5cf3.tgz","integrity":"sha512-vop1rUH1uan8C8DWHhSMdXc2Unck3D2QznCCxwpIXy0S/NUryjsddLF7p/NiDTh3VF2RntWb/dNjUnrm4gUlyw==","fileCount":12,"unpackedSize":48285,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbm+fACRA9TVsSAnZWagAAB0AP/0QAblQoV/4fJNUnMsSY\nqbBts9zkQXDS2p0SsehaBFWt2WpzlPgFN4lfTA437o2QwZyyrYKRmsrsch7c\nhx2DyNqxk/ut5sztT6ryDS3Yvr+yTzfwdKwc4ibUXEma6YNQzlIZyn/k/Sal\nNVG0SQnWTtvQzgLfQ1X80wxKxZ4JZwqmvJIq6UpwOsWBPC1DSqEyYpe0bhnP\n+i//UQ72hFaJXVsSDa/dMRH422oIcFLHrbCXAUnTKP+gkqyZyYhuBXmp3tQZ\nO8I3UODc65+IYT5BXNy5vF8ymmZOPbGOT94BmHIsujHr619lAWvrXRNENXSv\nWyWnf72j6Uz2qyOfBft2BfmRpP8qFASZLXva02A7e5SJjwHnTIIz+sdDIFOc\nISdE+CpY5ASVqjZNKJEwnJQeAo8q1rhWhmCUVPx4j8UXOAFRDwnoVTJoGf4j\nVN4geqPS2F2RwGKaxyXNw09ndX3SeNeguT77CoOGM3jwdDy1czVU+u9gg9Xj\ndxIJkHchd1DfjGqxfGShzQ6BL8iOAadtg2MxRaXHqB6v6ZcJrGon63MrA7wZ\nnjOqLES75iccftCyMRaAowZW33zYtdp8bJeDDUktehEniM4bFqxeyBOwVM5H\nlIUvs1Jjhir9IK6RVLosgq6KrJdWLPW49eRWSUuHFTbECIt7L++nDOO+Gp0Q\nxYoT\r\n=ibUj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwIE+EHmJZxxiMMJd4yx+yvOZSo173P2UIWICEFXPntgIhALa/AVFccpFR344lEiGxf3/rqTsowEUIosKRshLzs5hp"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.5d9f5cf3_1536944063882_0.22579823774230068"},"_hasShrinkwrap":false},"3.0.3":{"name":"@crave/farmblocks-input-text","version":"3.0.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.0.4","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.0.3","dist":{"shasum":"c3d3dd421058e852b7ddaddf7e13edd786b196df","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.0.3.tgz","integrity":"sha512-YPHEzS85/FTBT3sU7cd5XxnkJKJD44XOcXHM/ilidaakHJhGo5obtFoEk7iLGVqroyfWl2ts+P/Fop0AP92g2g==","fileCount":12,"unpackedSize":48151,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbn6JkCRA9TVsSAnZWagAAo8UP/A4ltr1NvmqNxAhRqKHJ\nEEjibz879k/hNPAdrBMdO2Uo4URp6QExhfY7JDPoo0ar+UVgihKTGKdX4aAx\nUq5KJiNxO34u/SyS68fENP2Bxlg/eqoWIAY8KzAiYNQ+y88tdjRjAZoQzvYq\nBNqGmdSOeXeV83bPO6L8OypDHFKqmpEEFzpc6/09t6/eWE/IOKsZ3g3Tx54d\navQiLTZDHevVFm5OWTdrnfVtLHKKeUrnKSkd+qX/8ZTwFm1WFaAZVjuXUC1h\ngU5HBeiRA3+UKvJdQaHfadvyoilrsiQZ4yj9tLirpHogZL9DKVUoTN7htYAJ\n4WU9plX2Ccuu3JeDt0FDiEM6rqVXMHatfnKouMpAEjVrQyGi53G1uI3BJF3F\nd7zHcCQdVsz2D1uGYKFmJ2+ccAijuwMCR0uJjfN7VBz+A5RSz9As801vPb+u\njhJCF1V+ihLGv83k/Mg0eRKrE0x/lFd7oZdamAV6OIiPziNNf+p1leZP5g3c\nHQ6nNFyWnBtb5Or/z8JCvebjdS3zzqtVoBIRA6+YLJ8ZUTFadMirMtPbWbbW\nkxzkD+C7w7g3eKvWT0sV/T4kl0ooNOZjW+hqr4CUAl4O3+pZLwJ9/Zhu1ise\nac1opnIkJWrAtLFDvuzp9JXDGaE+5vsRiiU4NFmCTE7tqhPEDUriHycqeoKU\nSucB\r\n=P+Ut\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICxgQWE+yLH2KYn010RjkOT6hlNjbG/Ruc3iXq2OpKG+AiA1lbUHZguTczpUbHv8ZaIPDNn78OnJLvHQnzpuBSnThw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.0.3_1537188452244_0.34589643733294806"},"_hasShrinkwrap":false},"3.1.0-alpha.e07c6875":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.e07c6875","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.e07c6875","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e07c6875","@crave/farmblocks-hoc-input":"^4.1.0-alpha.e07c6875","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e07c6875","@crave/farmblocks-theme":"^1.7.0-alpha.e07c6875","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.e07c6875","dist":{"shasum":"68ba9521dd17769f2d94a9423f73b7cd5903fca8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.e07c6875.tgz","integrity":"sha512-8oN2yNKP9jGL+q4YyYGcgAnh+q+nbz7tHS9j4/UElr7zwnz+w0owdZsO84O7AIUMnV9kw8bMEVKRHClL5hoIOg==","fileCount":12,"unpackedSize":48525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbn7YZCRA9TVsSAnZWagAA2fwP/0eT15SPBPVwRackfahY\nS2VeeBbSeoog9vlknQKzLEqMfzaLBo+rxSw0sWYF3948gNYWGY7qmhumNaCn\nWDDNG1NJiBnpiWPIpwvCAuFrGRL4RuDDr34N56yyxbrmmTD5hjvb+p+B6sl9\nKMHSzh0woQDaXxLT4KiRUGJOA0MPDuiIr5TswZgkpu7rpq8T2i0yjXC+hdpP\nJa6OLg5jTrET7T6nSB3p0x1uf13F4klg4XMUTy0PzaL4lOeB7HmRwW9JEFMc\nztU+rd9dp4SwzuT8lnb82brzgzH8+qlYNMaEqcv/D5uLK1q7eJhz4D8aVg7a\n6u+qvXENQfZpLXH4DoL+ybZ1D5SgNx3SNpz725DCL1VHAetCJaAtfeQVwTrz\nh+ZxRm9pxu4/8qSboVkQwb8trClyCzpDf8oaRO/PhuI/mOTPGd+M2nUTndYJ\nssVNxRX5ykSaNWp7RqT4Jge9J4IeFehDmjrll5LEdUkEhkVUY/vsw9P+Bwvf\nUH3IzcZa7QW6Tv4a1Wj5u3itSTqfbWPq2D2w7p854XuKjzfrYMwUDtxx1nGz\n+9ZVyM2f+OSJdkY4rn+iOSYhPUER/NdRkmUvlxMH9+q92yS6010L0eHaqCjf\nZTapGpV23HBiY5H/Gw2I7AwUVOX90lnb4yNIDvFjRdxqrxlF7+/UQXn/uSDV\nsXJQ\r\n=3MHC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC86VKnxYh8RfUlr4kKAFTsE03+8OaAcDmyCwMKkpLQCQIgV/F2XrQGrq4oGT2gH+3grDWTvsh3nw91CXnHNADI2WQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.e07c6875_1537193496425_0.5634069219357902"},"_hasShrinkwrap":false},"3.1.0-alpha.6e0ea6b6":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.6e0ea6b6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.6e0ea6b6","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6e0ea6b6","@crave/farmblocks-hoc-input":"^4.1.0-alpha.6e0ea6b6","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6e0ea6b6","@crave/farmblocks-theme":"^1.7.0-alpha.6e0ea6b6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.6e0ea6b6","dist":{"shasum":"7be4c33b2dd6031c1e642a42812ce46cf7dd054c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.6e0ea6b6.tgz","integrity":"sha512-D0U4QsulsVJIEQ1+VAHAd4I890ng3dkkRajM8JFRoRUf767m9Rv/7PpBkcJdtacWOK/WP1Ek8PnjVPPoq8lmNA==","fileCount":12,"unpackedSize":48525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbn74QCRA9TVsSAnZWagAAUCcP/AiyNH3v+5pNy17aZ7mS\ndwN+kNZex55XtGnWpEazJlQRSchfLRzk2YKsdbXDM39621+B7x0NjQbYmWYK\nrZaCJLj+7rRvGKnEOtI2oWub56naSlEsGQlcH1M5jdWNMZdFETJbWMgaEE4a\nPbMj+kPjxhC+pht+j082BeI+66dI+s0bPYt9cF8EA2NjmjiUVqfR4Qrl3keD\nEMIrWfjyenrB+Y6cbIduhKPhDlq+ei38DZbcF7aEJlhNn3Xn2Z8EcUdjlv4H\nLqwnmszhi7ndPe/uKxutHFsC9DiY+OGncA1VTcwNcwnQeiD8uLg0pCm9hxhx\nKSOiMZ6RHuO4Oj60nXjJeHXMzmNByt7BnJ0UkdWCSpHyWCAFzRbvJ0N44Lt3\nlFvI6WHU7PJkdz45ApFDcSBwQmalo44B3SBmASjR7WGyOL8DToffTGWcsPao\nY1bBYktwdKRLSe8k5oVfO9mgBMHYuG1qOGpfHwJFurN5kDaUsEDdUO0Qbi7l\nCaa7LqAd9uWZ5Avu409o+8A6c1aAd0CQ6C1cWoGxhtJjzDhnSZd6ekKmAsUy\nkqwV6DpCuEwxviS78Z2FcvkQTZVS9rIuGFsK20GhJi/vLg/tMau3W6QKIVDt\npkqjTxe6+Rhi9dXRLsvuyBSMEX5MyKUy9L+9VeeQ+1LJqasa0BKDvwp05b6C\nYRi0\r\n=2Eqq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHQqQ1TwRMr3LsS7XdWwz4KG50FrvlmFQHHtYa2fFQkQAiADXovQtYIm1Fi35yTJ7ESVJjQU/c/X90dObTahJijSfg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.6e0ea6b6_1537195535685_0.4654033740523167"},"_hasShrinkwrap":false},"3.1.0-alpha.60aaa968":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.60aaa968","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.60aaa968","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.60aaa968","@crave/farmblocks-hoc-input":"^4.1.0-alpha.60aaa968","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.60aaa968","@crave/farmblocks-theme":"^1.7.0-alpha.60aaa968","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.60aaa968","dist":{"shasum":"5833ae5663c5b5bdb1098af94092dad268fe7a12","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.60aaa968.tgz","integrity":"sha512-cpYMqLhnM3hs1OPKriLMFvQJBOkTU3U0hBu3KhGBp96oMcWSsmPH5XmDHWFZgl57F/4Fw7ty8LUZp25TmCHJgA==","fileCount":12,"unpackedSize":48525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbn8myCRA9TVsSAnZWagAA06IP/2ndX1BqAHHn461dwbmv\noaxmlYWfgK7x+6jQk2D8sCDuwBvGNi0nzNh/KAEAFQt7dLdo7e9QsfwNkPSy\ndEGyMG1AExOCBtcSopqIC4mIvbjSAftmeSU/wcKP8sVuaBwKUqFfJcwrhPtD\nj8+47Nj4BZWs+iEyEGDY9eXKs8xZF/uheL6c1jedy4esbQ1gm9jmCit58iq1\nPGM2CkIFtgB59oAAKE/M9GNc3jDMABiZzCzLhtjegVMMPUgxKmFN6+P72p9U\ny1Iq2zLD817RM1USphMirwyUOWAOvN91JtdphDhZhf/SoYPVoARpw9ypKWxg\nMj5kFFr8aqjw3aD55mmf5nKC56ttiNnCJI6afRA6av5SNY3dRdEi8GWKja5k\n6XA7JtGKIFZ+xukDdzxkYwhR3rFo1v4J01fYQdzsuGTQw2lzMw0WE3iL6NYi\nbOcUl3Fv/CaNpr7TTQa672gbyq76mEh7qJ37KxU3pS+pdiGRLKhv4JT6UwUc\ni1//jUSR0g8GoyMzIca//gbzxvT3yj9jbE4lgZruabhno6Y9AUd27ZFMxGF+\nJ8Ge221oyaco3j7oSImYFD7AhzgfFCLvsMweGnDd8TJ3D0KCmrbNk9dLU/2g\nvm2Xj0WwEeiFrzUxFri32RmqDdSuyPcRhd4ZB7pjTTPlcswyxhHkmh6n4IM1\n+dJj\r\n=gFgc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC14J70EGs17rfBalIIIAyh0E/gNFfOY6w89Dhz5OXkagIgcFTtEq8oK7tgF8cXJsog4IzO1XfEm1zRGNxtX58P8tE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.60aaa968_1537198514289_0.37397442347857046"},"_hasShrinkwrap":false},"3.1.0-alpha.211a5123":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.211a5123","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.211a5123","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.211a5123","@crave/farmblocks-hoc-input":"^4.1.0-alpha.211a5123","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.211a5123","@crave/farmblocks-theme":"^1.7.0-alpha.211a5123","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.211a5123","dist":{"shasum":"8da8b9b3a9022c42949bec36be3f85e535d7808e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.211a5123.tgz","integrity":"sha512-ClR3kmjRSrQV1lY+Nqg95SqTZsOWjFxh2vLAq0cvUnl0QZOoLEpjK5bBuZSjXAhGbK1C3M596wpjeXN1jxrmrg==","fileCount":12,"unpackedSize":48734,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbn+LRCRA9TVsSAnZWagAA10UP/0DsUQGxS5BRw7gL2O3f\nXbHFW/hLDcS3c8ZuVeYJyrWZ+xAoXcDBipkd8bZVyczJgpP8A969BnHkISVt\n5q7gs/eyM4b3WmpLr2n3hnyMVKZTq9dQI/YwDdzJpwCoPQ/EhzNunxb0vm25\nH7lsFHYjdjgUifERkYN9f8ropN7rZyIW+vrzDNO6ulG9QRDvbSKvggInL26B\n1MKoZ4yq7gsNYL6YNNWXzcfqLK2fBgd4rub2vSq001zQzJZkQHDvbt6vYgqd\n2YbAWiZwr8Tk5cQ1WniybMHBqfnn5MmSBKdPizM2kN1ODM6q8vn7UfsFkw/4\nfHf/Vw0qkRYcRu4Fh1u8xD+GoyyfHUNw9OXYgd7rbGkeVwbDWBx05vz7F1SQ\n52yUhKiaQUc8WEiPsNpWuaeaOiD6EkWoyomqX6U+xSFfILqCprlfoCMfU36y\ny8vDobPYBdqQ/18iIc+b+LYFz2D+yEpK0VTYWZKIxWcZKzX9ylwcGxc3U+x0\nNKRH7wPxhLYPRTml0Tksu3SNzbgNrz9PwjGFGQIR68Ckw78g18S3FYHtkQ/n\nR6GCGbFi4s7IAB8D4Yh1nxO/vgKqy7NoX/sk1coqdSafBOtDw0YrKPZ7GZKB\nrYSTh5eMdfRC25SjAC5EqdWoMWtqxCcrspv2TiatgDa2NMop4BxQHRXXU60+\nJCK3\r\n=n34r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYcZoOt96L7sfySHy8u7v5wuPyyWsq38EL9ttijoY0mgIhAPqCs4dfYelAJKJovbZr/QEhtrhtlO9ORrdcoLdRyHWk"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.211a5123_1537204944543_0.9100339443454695"},"_hasShrinkwrap":false},"3.0.4":{"name":"@crave/farmblocks-input-text","version":"3.0.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.1.0","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.0.4","dist":{"shasum":"2865a39d5b3077a10f126ec2c1faee0080663d89","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.0.4.tgz","integrity":"sha512-a8jKo6sbuuUG5Mor95Vqhb9T/SOrE1LFfGUhyP5MgVGQlonlg4RUgrP66ofWN3fftbvWjEkKixYtC6GNcVR8tQ==","fileCount":12,"unpackedSize":48391,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbn+7vCRA9TVsSAnZWagAAdEEQAKNdwcvQGTQufc2zLt1w\nVto4I2kcxGYXayOtIR/22aaFnD2V/0UCejHmnMI7mBoGR1BtQfDpAG3pL/2N\n7j7lRElZ5/tmwjHA3mBqZIuRAc7oPzwLBAi0q6D+iZY27NY2mNbddLTJ0V7H\nPPLF47SHQA8QbZjlVa41MB2VgBivFlEp5FyEohJjwotqlbaL29jGdd8iKfza\nqGEjHd4wtAV7PsOx+hOvaQLF1wPtBddv4nOxYSD2Zkdy0TvZJ5cbbjANbOoa\nc9uGgDvnNdt3famJ1qo1AbK8HmE1lVw0rDkTDUR2p2TZZidVJDkycs0Fksn1\nucf6QrtZX4/5d8CyarGPbS9112QTptjKShrfS3IK5vnHwq/N86CYp7V9gHMp\nO7qZCid2YGEX490YgdQ+EZe13lySwfDQdw5JyRahNeKOUGvnoQt/o8UNgNtj\ndAQrVjo5lH0r4GhYdyoT6bgdcxOBpnqcuY4TLntyTyN6m/+3Q3+ogy69B+1F\nt0WImX9jchMG8mD7yJGodcEk0iAzbReHOVw71sPNopeM4L1dL33Chcn1HvV1\nk1w7EHU9MBXzX31I3I06rqXw6Jjpu/tOEwA/4UdmpS2RGk2UWpAtQw55ryM0\nloMSvuvSu8C+IloO8Xj+TL6u2YReh2dLyUdkHAgaIGrXfxxq4QGq+a3Ja5J9\n+w5V\r\n=fmxF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4ZpRywOTa/p+8n9AIm+XXio/UWmhtOmkzv3RKxB79kQIhANVtzn4EimMS051lKMZDkkTrXXePyh9de30njgehnlJX"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.0.4_1537208046441_0.7650197779966486"},"_hasShrinkwrap":false},"3.1.0-alpha.8832807e":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.8832807e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.8832807e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8832807e","@crave/farmblocks-hoc-input":"^4.2.0-alpha.8832807e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.8832807e","@crave/farmblocks-theme":"^1.7.0-alpha.8832807e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.8832807e","dist":{"shasum":"d8e4a916209391cfcc1ae85d0bc5f25b67f23939","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.8832807e.tgz","integrity":"sha512-rP80ugS+mzMZJ5o5+3tc/kcE7zXMuy5MxPGjRggKxpn8uuSVeKvnXNXNUE6fE7n+jr5DoYFqyrxfHpQuwGFQxg==","fileCount":12,"unpackedSize":48765,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbn/+eCRA9TVsSAnZWagAA99IQAIH2LgmniQmODilgRqae\nofS/TC51ih4NPyqxQrkM0tjjjJR4DVBHTE0JWgq+atBs7mXUyQWxMMkjMt5U\nKixoZ5zoIO8CYhlW/xuLFXWpUAXMRXZ8zjRsCa0vBizqlAazOnBX462LFtuC\n4eSM7kA+N+i3kgwi1IhA9pELTdBHv+oLntB0FUq9cVZuTtPn+/65A95GCack\nPhaNek0KfyN45dTB9GBNrKJ6oBitE7s75Ploj1xa8hW04L+DyTcK7bYHKOMl\n90jrfS2vaP8xb8mF4uU4MUvmQHCBKTmazcN2ldy23Rtza6JzziNJ0gd0eE6v\nkpMFX9MB6pbDw0wNsiOIVwq/xpa1IILvLHoWAKiMUbwKo2HG25DMyniYbYdq\n5ALFe5DaIDGXvFHUCuE1+hSTqTs0EsYOK0SN059mionMfQB3PqMVUAmyGEO8\nLpjgmj0JEF8nkmlBzVNsKY9oFMFrhOSi3FZbBOVTGFDeJ7bxomOX8NgV66xQ\nQiJkx+twpFgwKaEtBqE7FEJyojjgwJLVWaH2lwIIBGNpOVQKAxFpPk3REgnL\nZACOzClhClD4lSZnEzbSDrxfA1zzkmmdcKBYS/WgHHpNs/Un0TTPKiL444Pe\nGoJM1wBmLh8Dt2mX6EXyvlQa6/5NkkLJ8mB5FQ2fKOQf/qGq0H8Oyza5IC6W\nAT5+\r\n=5jX5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB0dmDmM6wd0rd01dfgCH3QOZnyHiUpBI5gROzP9ciAZAiAIAGagB91DwmsMckoSYh80pAPIj3gYjbQvfWaWfUEm+Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.8832807e_1537212317553_0.555429067530705"},"_hasShrinkwrap":false},"3.1.0-alpha.e150336e":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.e150336e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.e150336e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e150336e","@crave/farmblocks-hoc-input":"^4.2.0-alpha.e150336e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e150336e","@crave/farmblocks-theme":"^1.7.0-alpha.e150336e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.e150336e","dist":{"shasum":"7794b85415af90fd6cdb9e8dc60d5cb99667ae17","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.e150336e.tgz","integrity":"sha512-RMdVvu3N+HzzbOSoNzkmd/NmNTzaEhmxe6PziO3tSnBo1kgXNvmtVm2Ff5WhLRFSFGP6oPrpHeT/UQNFVEQz1Q==","fileCount":12,"unpackedSize":48974,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboAIjCRA9TVsSAnZWagAA4eAP/RjHJEQOykq2bFMkBfCx\nJdn8drhwfPH1EIS1tnmgaYuVFgRZ5ZO8tMWp+UpPvmBWx8sDOF0S0on3+q3x\nloOm/7zgPvXDGh+bP+9xqu75wsRhZ6c3WB9pWXoY8FtLJZs3jHkCtvdeMhAA\ntULuvnTinwcmGFTRBxFjZV26PbKcEKN15i0/EVWtlL/qK6Jvzs3Ad2Mf7MpS\n2lLG9FpH5kJZSsL6JYRbumrZ5aC2QWudFSWMefW6eNszM1MMj2lP4WB+9Oct\nD7cWP85B6Ktdxy13MoMuIzytgh/PChIss5t++8UWZs0YSCksU4DlkAUGQACV\nl1VXXWi+KwOSv95yildvQw+JtrGwThCbQhWRtbovkCjLfTC3G1upn22sTYMd\npFocSH8D4gqOvrmGw1yo/2Yx/CAXHpEWwVGsZhasoJwXMj2HP6ty42UWRhKk\nU0oI4Ac6y8R11XVBUokOoAg0x9c5RmskuzxT7wGTAHIck8+rlwxAYY3VARUl\nq4ffMBq+onD51Ck+8dEulNNBSz70g/Ac/M2U7on+TdtoIhXX70xbtASglqeW\ntduSV5u8HsdoUAMA4uj8k36GMJYa5EIDC9BMJGTJQYaPZjU3GgjgEimA4BX2\nvdlZCkVxgYVo5w9BzWqTaLGxBDPUiAe8nIb495YGwIueJlYD4xxGmNsV+QiH\ng0vq\r\n=4RCS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCt/bUd9Uq6w3my5Rtd7ra9dDDjTNiXRfuwrC6zoZUhQIgKY8pLl7fL5uxiEpAPIQSzPcqV94m9hrfL+PWmGA0QSo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.e150336e_1537212963038_0.024669853300646638"},"_hasShrinkwrap":false},"3.0.5":{"name":"@crave/farmblocks-input-text","version":"3.0.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.1.0","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.0.5","dist":{"shasum":"e3c23f44b6c4945948dad3ec50758bbf44c05b79","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.0.5.tgz","integrity":"sha512-FfWzKjRZEgWNsbxZZDLhH2PGalbt4V6FXb8ORLR6v8WAUm2j1lPjWehgBx6Ebw+m7glCHLUK7+ZcDM++VDFE2Q==","fileCount":12,"unpackedSize":48840,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboAd1CRA9TVsSAnZWagAA/ZgP/2DefGT1U9bnIezgmzB1\ngLAwdG2w9+mh2B5KI3tRnIWP++Pwn4Za6JAZBOx8WGs+oLwWObBnHiI5gezS\n3TP+qHhi82icFr3hB3wFNw3t7EMbsh0nfnUQdlE2+dvSew2WQjZOjmToDdic\ngfsVpa3S8+mdIZYbmy5RkBD3fMuUPdzwz+/4HbgOIzdDkX6WDNR5ykyUqrmi\nmP9k4OsiwsJIu8+GyckSIG3dvFSIygTzed/vakdtauaZSLLfgVzHfvVy2Z5d\nzctOb3ADKOvPRb7u2urfmXcfdsX76SS0gRuyexN8A9BgAhIQ46itb7MP6HuK\ncV+/I89Tb0TT7eqEu+9TLlH0q3bntBmU9zQCHhia4Ve/npp6L3YQNPrf5e5x\n5bgdA+EiWwV+8uCM3KEYQ6L0QejZ/N2ZNnpQzMrmdwWI/IHh3mH+CyYJ5HWs\n5OvHg9Fmo/Eg9RbuPaydds9LZxRjqGRYjFa1IMZuzdurEAcmArxfZmK6U//0\naekDqPGrvhtCfjMkWIAQsCDDrpKKt+rnEJZGDvLugmss0wRQOU9KWFM+PTHb\nGpzeuyGsf1RFsfjZC/rSRiex8FbbLxGHR+/iq2taVFh1V7bamQXHnkAHf3W4\nIkz9PfuhhLH2Rxqk2GEBSrK7nWcqK5iLDXdVchtKyf0ZzI5c8cWMllC46yiD\n2tT/\r\n=/7O7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEuicdXWqGJzm4zzi3TIV1oj1XgxsnoQv0nU9lQm8e8/AiBk1dAmfnT3sa43VEyoPkofa4caSEyS2Eg1tPaWrw7Hhw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.0.5_1537214325006_0.26713416606660445"},"_hasShrinkwrap":false},"3.1.0-alpha.227dccfa":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.227dccfa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.227dccfa","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.227dccfa","@crave/farmblocks-hoc-input":"^4.2.0-alpha.227dccfa","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.227dccfa","@crave/farmblocks-theme":"^1.7.0-alpha.227dccfa","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.227dccfa","dist":{"shasum":"3673afb4642c1913f4cd0e1baeec562e3881675c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.227dccfa.tgz","integrity":"sha512-6AL1No2cp9u46Ne7eiUu2zpOxctmTM7dxp/uYhOOCOyaTtSnBsVMJrSai8J6RBsiVYyeC2oPFfnFjZBb2CbYdA==","fileCount":12,"unpackedSize":49214,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboCc2CRA9TVsSAnZWagAAqm8P/1oMZJIzXL7QWl2P6xUO\npRXbkYoqDdWDDNBdVq1MeNaL9C/CmBZ8ym/gw7JjmEBG3/WG8k1xMCS6nXyR\nQ9sBmyJbqjC6YWuaQA6148u0y6GSh3iYBxRuvcJ9i8tqnuydauq9O+mQh/G/\nOHoLTkreOGYIwxfwcI+uOP1fEaDLS67BdviLf3WDv9ywWV+LqJbylIdXbN64\n+EXtbYLlGBys6Jy2rN9r+JP6MI3WELePXihT91ahQURMjgV+IN3kh+5K9IZl\n62/J42xfuw1URdFEZn+0PLXRKo17dkrJO8KWOwjfbTliu84AjQJ3gizU/Qdt\nY6l4xlbURdYNEcbiLCsC7NhebBX8l4tpFbKOLblffIGNPZJfxgSWJEb26Eup\nNhN0m1ecoJxW2Q6s3U0XLNuKgbVdLCdMSaK57WbDbPrsNS/dXyhQWBJFyC6H\nTs5vQyDGlv5jJZ6pp9a9/U6sWPNVcJHJIDi4Byeg4bsCY4q1UbuUzWFKCqJ1\nO97CWamU30NmGqqDrxA3DCoE+w7QZZGLdiCkYd9iAZqZEW9BvvOK3lQuMXpM\nznhjnVVn6zSOx45mT0RRQn0/QPAyAAJDEuYoeu6phatzyrSAmYQnm6aybk1b\nETi8vgfa9DU4s8nw6/A2ifRLivQecnugWnFGRIiPS1+Y7FBFT8KgphwNccAq\nIQzW\r\n=uVaV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwet/h89MMoN7X85UE7mdiNiuRJrO2ScNE0qYcy6qb5wIgC8W8jJvZ+5iD8PiviyHGvrnqqq8geacydtzOvehgQ/c="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.227dccfa_1537222453046_0.7506603170580686"},"_hasShrinkwrap":false},"3.1.0-alpha.ac0d405e":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.ac0d405e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.ac0d405e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ac0d405e","@crave/farmblocks-hoc-input":"^4.2.0-alpha.ac0d405e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ac0d405e","@crave/farmblocks-theme":"^1.7.0-alpha.ac0d405e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.ac0d405e","dist":{"shasum":"341ad6484b47728e010a0cf26b03719f76fbe1a2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.ac0d405e.tgz","integrity":"sha512-4JH95FB0iSxAP9XA5qynicjC5niiF8627831tKLfYCy+tDQZ30TDPZwM1ojBU81jW1Ngd5j0CloDX4HCFuXWkA==","fileCount":12,"unpackedSize":49214,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboKyICRA9TVsSAnZWagAAKp0QAJOLKq3pPtlgLQ0DLPvF\n7lzWuJ3I35goW7Mq4E9ju9OrddK2iEIl1htyrrmsGkaB76zdeH7wo0FXwf/u\nZyHZEEIZPp6ZJKsosgW9adI2aLj7PHOYa+XzZaeD5qqVqc9CBOUqcrMtq425\nZy+ktxzmTAl3d3EKQJoFfmaR/WpaMwPUUmbkEyzMhwypWJUT6m8l0s+MzxLW\nIVEv6pE6Cx0eUP9LQcqeDF1AciemSOkbq0hv2dD+xknHBO6QM/qmSeT4Ytur\nx4AeFNiR2qGQx+aV+22S0C6KlYJOb6FoMMt0tMGMMdGa5FOy57yOK+UhBiyO\nSrpGv/+kxviF6R60YRi3HH5iC00C9391w/zTyZ4O6goyoYhJLXqNwVj25Lw7\nDmZ0HCc8MFotIoB7GG/38PyIyj4N+0N66KH2FU/bNErQ/t8JNGtoJVWomgrN\nzWfjX4+k0EaCL7n406uj0dF4UjHvhluyk3nrBfRYQx9zIWCtqS7cisf4zEpc\nxt/yaLIStphXORPdIPd7Z4WmFv31g3scAhYjhJs5Zx+D2aNpblNcSu/x7+pb\nwMsZth4pDq8quIZL0uvhhnlBp0D/a33onO9iTs4dcsQTIJJPZxX4DoyNl4GZ\nsPsZnDlEqdN9DSpQchlTMQB18RmFDfCrjCeicxhOsU+ZN9LuM+evIooz5a14\nULcp\r\n=xfo6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAupAfbOV/M7VdU1djgdhBmA03gSkfz0rcWw3/UjzH/dAiEAiIzRw2v9H2dBE/9eg1CtMP15wFsbZNdJ4iC2T1JEhdw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.ac0d405e_1537256583895_0.8139813843328976"},"_hasShrinkwrap":false},"3.1.0-alpha.64a9a753":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.64a9a753","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.64a9a753","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.64a9a753","@crave/farmblocks-hoc-input":"^4.2.0-alpha.64a9a753","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.64a9a753","@crave/farmblocks-theme":"^1.7.0-alpha.64a9a753","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.64a9a753","dist":{"shasum":"23daedb84b0942d8bdc2a403a522fe082e8422b7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.64a9a753.tgz","integrity":"sha512-f4/59h6RgraVJ5euBa08zKeXiTax1T5ra9LFzgIUDb9mIHdbQandb1A27cdH0z7v8qQEsUbMpWrv1Gdwe0rrcw==","fileCount":12,"unpackedSize":49214,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboPasCRA9TVsSAnZWagAAe+sP/imysRoTgg4Jku0Cqr5D\nkdVg/TCriOTVNF67ntYFnJZ8+wGuTquapNpAkkst+cq23uXfE5Y2FUKu8rpu\nSG3lzwDodpsnbRu1tV5PpUmWjGDPR2KEbxy+OSF57RiE7JuKut4UQB02bEl4\n+taaCNHxSnzxMtlfz04Q05orXaCFTxykLDFjVBYUns5a4fzcsanTHsNlZiyq\ndjHpuIE0dPTUHz5Aj4HMMcxu4jKFwO+V9co9O58BTYAPSURoNZlRCMttAEPl\nWZ+ZvtB6EN4Lzg3qjQi4tWx0GYZr8HfXMfWWKJeluSaJwkjatYvzzWEWPgC2\nKdcawiCkNyZGFeUJMk5ba9T8JEg8TknJ9SXYgZvAhw3nt2TvvU5SatRpFXmZ\nqHvtf9vRBmFXOPzPbyXtk+wYucM+pIKzoS7qtDg5hpai60Ot5p6DNIvcEiPl\ns/rKY+oioEjVn6sozP4EBtrN1As61L8rCzsqP8k+O1hPPMW/h583Rf1Tgvbg\n6I0g1vDDCwozDanLA0PPFMNXVRAmCIk5ddK0DaOPL0CA5MX24XGiYB3U+xXJ\n0olljIDqo6Sb6yR0WjlJp9w5RM2jSFU3VfUPrzVJ4Tgb/8XawHs6QjB+2Q5+\nW4jDw9cbQw0im8jlSmDX6o9cQJPdFM5CmUha3MHLA4ycp0nuJlqLlCU/FRPW\ne8fm\r\n=CZO4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB5mnDJpg4p0dyfXwTVbq3e8RHLTpPYcG7h+vztA7D3dAiBPJAuMtubc2ogClQbSRcpvveVxWh15n6iJlPV1oWP3Lg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.64a9a753_1537275563540_0.8898269939063579"},"_hasShrinkwrap":false},"3.1.0-alpha.6728014e":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.6728014e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.6728014e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6728014e","@crave/farmblocks-hoc-input":"^4.2.0-alpha.6728014e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6728014e","@crave/farmblocks-theme":"^1.7.0-alpha.6728014e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.6728014e","dist":{"shasum":"d3e3e29acfd8f9cb0971589855e41791b5a150c6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.6728014e.tgz","integrity":"sha512-TltRjlWVVQ5n1jayaSw6ggd/77PV+QDOKm9QbXSoEv0l0pbl1PWxpw3vA+4SxUm1ScUHd51zkQUL5a6HjIRG5A==","fileCount":12,"unpackedSize":50129,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboS8fCRA9TVsSAnZWagAAb2sP/0OXTXVDXk4bX1Osn/+H\nOHR/IqFF87RQC0+3sD8NzIkeKA5FAVNGDiGKaBtJFzBySS/TUknXo+kYNjL4\nE9pA99EOyRndU44k436tZJkJPqOtH9TbX+GYyseNysAiIB5WyfXu71NxYLIZ\nQMbPrSM9LrwYt6ZugSxC42VCQRQDwi3lgo6PxW+iUV7F1/tuvuNXLshWnV9W\nfJSbGqdWB/NZZyB4MgONZHNB5jKu4oe/7yoJ9tQYanzi/RSNBr4OwVfuNhXM\nX8q/iZFsJWVaQvqEQVVNgQAboz6Jri/M/rg5jyC1Lu7w26egOrh/rBMCh1Of\ngAkuU2bGQnE9CQk9W+uKdYngg/jIVpFjxpbO+HTy9PyEps7UXDt39IVi2NFd\nwjVxkGGyBpFZ9Cvk5SqXBWydtbwPge2Y9igNyk4d9BgwVHshj7rI4nVtz93y\nELNuwtX9Q0rKKzVLwGsklhjbUanOn7cpwEhGr5ZbPkdjVoZuwFadvva8AOaf\nQONJQJU19e+meoqIjRzXnMCUviKJ8Gj2FUgRA7fm3qJ6LDnr35tFmUePK6CX\nr23g3DNKAup9/gFqNBDF0wT1RPuwTXyG98amfF5wv9iA1K9ge2IvHFp2QUYg\nIw57V+E3SLuRsZkrJ/i5ZdHjgNETnq4bWkrI9hzQOPQ86lMaY4iF0CaDd8Lz\n5v4S\r\n=vxoU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZWRosf7XVXAYrkVQrHm+Y+IB6+Se34kCa7DTjt5uWAwIhAJ0klL+H+GioY9J6Y9xXtldAWY7H7rL2ZqTQ+1krYVw2"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.6728014e_1537290014390_0.6335168266483526"},"_hasShrinkwrap":false},"3.1.0-alpha.90bddbe3":{"name":"@crave/farmblocks-input-text","version":"3.1.0-alpha.90bddbe3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.90bddbe3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.90bddbe3","@crave/farmblocks-hoc-input":"^4.2.0-alpha.90bddbe3","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.90bddbe3","@crave/farmblocks-theme":"^1.7.0-alpha.90bddbe3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |         |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |         |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |         |\n|                      |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |         |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |         |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |         |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |         |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |         |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel  |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |\n| mask                 | string           | when a mask is present, the component will wrap an instance of [react-input-mask](https://github.com/sanniassin/react-input-mask), check its docs for further information                                                                                             |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0-alpha.90bddbe3","dist":{"shasum":"5575f2c9124faed0a0a9a6a0ecc049e88b464f4e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0-alpha.90bddbe3.tgz","integrity":"sha512-MAKJLfX6O7pEvnIx/pSHv97EWncEsZrQPF3evsEgIwq9pTnsG83Mj9cl4/Eoq8mZUACph96VB+XcyFumdwl2oQ==","fileCount":12,"unpackedSize":49214,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboUW4CRA9TVsSAnZWagAAsAUQAJX6oThSz3JZeMduvOZZ\noA2E6LUopYRK5uKhjDKvS5fIQgJxldargd8+VqZ518puDi6Ymp+WMune8q5h\nm0ootBopJbF0JuPxLnd60vNC8WuP5mSAqgWcCHEl1/ckht2k2NK6y1l88MpB\n/rOaDmrJprhY7JGWr2nfL+Wuy57E2tpEEFfZisYXOStLcjGqIsxpxuZEdC3K\nCeX2cC66N4pSXNzzoALKpVG2hby4HwjX4C/uFBL9Yxsw/Gvvscib9rd2PUzU\nSG7rzCCLiQ7BwnS9uB3Zx/UuQ5TXhArl5jJLrFCWIFECk6uJ3iszjk3lK7df\nMV6QfiEWaONxo7KpF/bZ7vV7c7q0ijQNkt/EfYp5ALpstQRKPfjxMRBrv7Gw\nSqgu8dYjngHLTKIJVIg3JiYqliQs2jEwDeFEDe69yQYJsPten0jVYD5Q7fMe\nFL+VgJ8W0PSoQlJPU1j8GQlkRTjuHwoCM54M50BEF4TtUSv9KeCWdxmMtBnd\nvi+6nnrDXsndVZt5GVWtZP1ajhA7m4vhANKFbMI15hHi/q4x2OxjFVrsRk0b\ni9VlAUQBUHHIowGqD/e+Z+LDPJRGQgRQq7vpWm1B0vXPV/dSNp7keSxl4A/7\n8KOUouoNcgLZgDALCSI3bgb5AdFXGJ12bycPqixfRTmNqUgSJ+Bz6NCEM0mF\nDlLZ\r\n=ULOf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDUBAQpQuyG2wtk5adngKtxUJUm2iVI736F3qfa5SRioAiBC9f3UgUM7gWW6gLhPkJIlngMHdPG1Whm2V8BPEny/jw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0-alpha.90bddbe3_1537295800011_0.6072356091014002"},"_hasShrinkwrap":false},"3.1.0":{"name":"@crave/farmblocks-input-text","version":"3.1.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.1.0","@crave/farmblocks-hoc-validation-messages":"^1.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.0","dist":{"shasum":"2f06bd3864e07b5369a2b4099d2152daac1c4964","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.0.tgz","integrity":"sha512-4FsG9FKB86zNwCYPeLRa92xeMN8+27YoD7jQO88qf0WdFykkOyl9o9bwofdx8v48ET1EL8n0V1B2kazh7JC2tw==","fileCount":12,"unpackedSize":49994,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboU2yCRA9TVsSAnZWagAAhXQP/jpD+0cbjdD2gL06ffA/\nvRQtVPsNxJESuhzAI9P+DwJtCYu6ZRGmgdm8qedaO1YUDvgYtuQLI+qBPede\npBhd/5ZNO+UeKbrxFSlwsndH3t5WnQ2/XnbCrJUUOQd6+dizKA1UDvv8hTqf\nf2BiN4ZtObkNxhrbFKwyihODhKbR0r77Y20ohEUrkD1bg6nmMIzLHdoegbC+\n0W36e8FrIPxRQ9phkTXz3f6E2/9yL1w8jAiNotBApziDiQPjf6TT7PlKK/de\nm9YI1dJjltxJDgBGDcWVi5tnjbac7zhMqizR8ryEdQ5zm7Y9OZ5fWer+OV9E\n8iKTxzO0FiXyNGZw1d4hu32l5prbjIJ5axju76jMs22jvU6jOkmOR5S7qh2w\nCqpAMQbFFWedWQKGywSwk0K0mbjyyv0ifNp4xEJqB3GUBXQcus+9b7guS+j2\nYY+cwVTB2XyvUv1Zcc2CEcqjZOaTJPj1rD4BI8DCG1wtfgkZTUsLoq6qPRc1\nA1mBdYYhz+b0/Dhtd2W6+5oP2ae+1GKYEL3KLpGM/VrY9ERdI2gySpK2KRK5\nIIm8VquqsyjbG0MEYNbrfiEw5HIDJWFmFQ48YmQa1WKeBXp1ts9nznxeSmpo\nqgQMMbCGCAGYWd5LfqqSJMgUWTkQvu4/bQXAb/YRqQ1NCWxyvOCEuW2ub+tH\nsreP\r\n=NlgE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCyIFuBHp3zv8yHZDPajlM/oKgRtyXjcBboyPv9YIxqUAIgRTM1UvOPv2Rp4lznBSSGEDaX6KKvhRZEOeX1pC634M0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.0_1537297841955_0.29125703486053545"},"_hasShrinkwrap":false},"3.2.0-alpha.bbcc1ee1":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.bbcc1ee1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.bbcc1ee1","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bbcc1ee1","@crave/farmblocks-hoc-input":"^4.2.0-alpha.bbcc1ee1","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.bbcc1ee1","@crave/farmblocks-theme":"^1.7.0-alpha.bbcc1ee1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.bbcc1ee1","dist":{"shasum":"a24df5bde49baa7b78439d2816cb382bc2eccdaa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.bbcc1ee1.tgz","integrity":"sha512-L3tIHlI5xwQ9ySEJX2H0fBzw0UaPZQk+ocP3a0Lpk56Iin8LyJePB6Ru7G7DLAlCFFycWoFXEKaTdsH1xcBTrg==","fileCount":12,"unpackedSize":50368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboVIbCRA9TVsSAnZWagAA94AP/jWmfhz9ltUJd1lOLPva\n5edEEV96+BddrNzkpnPY8EjEV/ZioX+JEOtw3xvJQJVkDTUnF70d6yh9zuS+\ncTZQs16qd+Uu8rM7g+TXew+niUfohPO8+4dxbTqai6wG9w+DtTDGxg/yTC3d\nJhJC+tettTjkmiFxI03fcuE2QVAobZlzzHy7KFV334GojJqwI+ZAImW0gL9M\nHUXzZYnqp6747U9DMzQdN6Me24yIz1pW8jeupgj4UWlz0IqFDufpOJOLR/RO\nkC5X3Tn/7oBP9euynqDMtmQ0S1KQXqVmf/JH7phA86j1ClefAM3hl1vDvOmY\nBslvAQo5CKZukrg5oJAbC1Dgt+8TPBK6Fjk/wlkNR2Slrd4gyykgjcOLkrgj\n97I6kMrR6K7bemEDiuPNniljqLz38g1tVPNacCPaYjjdH54rHeUhxLVPPEG0\nfAnbvXyYnAvFDKy7CFF2rhb5sp/x31BPJ1YjgzVoeaR+JmkkN6MGZoOkoVhI\nvdgXnA7+5cwhZwZc7r2EXNyI8EiDBF6Zc7o/R7O0Da6SKnnh3oqHSuEOular\n+2rGhOEY55iihAxyIEDoYeBuQQJjvbWKFBiY8PlRf6s4aV9A20OtytVwszh1\nJLwHt/XJrUWiLGXQ7EHpP9Ifgy3av9lmy+HqeYCw54RDgUuANU+5UrBkwmn1\nfPrt\r\n=A/8s\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCF9a2fAsP/gQh0AWvJXapnLsoQVg2dfOHg+fqsCdlzngIhAKjaAtERuUOO5f4j/Kb8fM2616pxxKCn4GAAeiqKAbmN"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.bbcc1ee1_1537298970987_0.1017653299563317"},"_hasShrinkwrap":false},"3.2.0-alpha.9f432df4":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.9f432df4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.9f432df4","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9f432df4","@crave/farmblocks-hoc-input":"^4.2.0-alpha.9f432df4","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.9f432df4","@crave/farmblocks-theme":"^1.7.0-alpha.9f432df4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.9f432df4","dist":{"shasum":"160cc576790bd41859962a6e5adf9ffb22ec7f42","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.9f432df4.tgz","integrity":"sha512-H1HVThxQ9BMyKdVnbGVWPXcGiHIhYsGzMlVsWqutSTDwRhi/kUVzl3B7B18RcjAssj+fWas35mjjO+UJwAuKZw==","fileCount":12,"unpackedSize":50368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboVypCRA9TVsSAnZWagAAPWQQAIbUmR3nxDvzhO65fdPE\n3qK+rOQGHJnereRxnbQgaheyZgw48H39HwmRerOb4X8QwiiUqYJ5zEDybnkl\nhsdThN/fWV1wv0N1x7gMY0mW3XWLuAIYZ3hxnD4KpkVYaP2kD/ITDylQ6pH7\nsMsUYwgpmbwqQ/3LYSpYr1olTHT0mqrgoYZe1dIiJN6LrfKYrtFUy//eDHAZ\nTM6VI0HMEkwBt/8B6hXuE7pCM2ljBreg9FXiecQbYgW0mLqy3LP+yDUHLHx4\nNG8Tu3JdxAQONmf6Jze2Av84lk0WToHnD5qNCSCv438d7R/LKY84dHt7va6o\nQcY2ScodGE4wI95CHk+NFVQ3ZVZHBeBzkX2A/qGGiYQpggrpf+6SrvgqipvB\nCHfStGSHtPuNgMbI142QGCvezvQIE6HKYi9wFxWSxwSSX2fm4Fli+l1KUDC+\nCaYhDTegEq6DTpOoipveqMXrqQqwqI3COF9F2G39F+nTS9szA/ZOol4pbfF9\nFeAvhiV+Q4sUMhe0Tkv2QFxFVzpgHWucpg1mEmTKXLrdD1ms6DCL7OHBnjyw\nvuR0V6Tsvjpmdd4++c0RIUJrzrPqf4UYNToTUhC3xRwmfSexkGxp0Kgdy6iP\nFKnPOfE/YaynyEvHPnx2fNnpvjX2pdLl6BZurgXrI9xWMbw78wob1xdT/Ia/\naXkM\r\n=Ge8D\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBZ4xdWZ0Ls8V7tQrNBvJv6DEuGBbmraonTtAAq0MH3VAiBsLJHjJlAuFnpKn2Z1bdDTEHD/JQFWltViFq2S0Xx7rA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.9f432df4_1537301665589_0.18169920228626402"},"_hasShrinkwrap":false},"3.2.0-alpha.065456dd":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.065456dd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.065456dd","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.065456dd","@crave/farmblocks-hoc-input":"^4.2.0-alpha.065456dd","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.065456dd","@crave/farmblocks-theme":"^1.7.0-alpha.065456dd","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.065456dd","dist":{"shasum":"46a7e0aaec779b78258d4225a753e9f9d38b117d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.065456dd.tgz","integrity":"sha512-3Dsp+u1aYqAjO9O24PtqjURf/VDTCvEiLmp8oohNAVa2fyicyG2RCT6atc2hK0XxcOg9oQPzOhZdVnqhk8DgWA==","fileCount":12,"unpackedSize":50368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboVy8CRA9TVsSAnZWagAAkJYP/0VLqMSGmVdnBacdbPLp\nevHEcIqienY5Doq96yc6eKG2Q2vXd7DRrchzpGG99Zxg/eYrQfzqEvWkZ6Ni\n1f/fm3dG2pBdYmn1axX1ZrsvQzz4NmqZrvZ1gBqPVLYidrrH5VQgFHARaBok\n9Oq+OyvGGiQCH1elwPtjzGUGJhIZPbz05Rj2gH9YXfS3iFNF5cVo3o8lHBUD\nZpzMsOsRmO+DbTbI1xWjJ8tpjH7kKDzCMATMOnjm84yhwqwIV4U4aiJePjtg\nznC/UyU2rMn6dBlhmvzChvBYjERc3Ee3OvH+1bh3beGuvjvT5L0RbTknRyex\nuB5SdGkUhWpMQDR7q7J/KqEx5K9aCbJt+urDN0NRE62rnESI55CaYLLSryHT\naKG5Ir+UCLXHjQpSrYeFNDn6evy686wdy3ATkdnJMTi2m4RfteZYGbIiI858\nXvqTKPB1vrz5Sunc9qRlJS5UCKZdjQYVRgkKQUv3kKHUzastimju5QQEzpz8\nqtZAxz4lUDwxd7fohrA8+UGtxMf3M99fXOm+Hau9Xu74kodAUUe9Bw9d/SPN\nTmONH1aZh8ZWIouMVYGENVfHrADqlVV/uN1yDyK+WKg9jLj4K41u5lJFnkl8\nsUmfRYf3YEduWlgG9cv9etF9W0ew8z12yzDnDaZ01NRMz4DFT01NCk/YSQzh\nCv7B\r\n=O/E/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC17X+f7CTz/2xC5LCQPdvlxN7of9W8en/HT5NbMiv9YAIhAMUuZST6ZIGzRKwpQE9mp7YlLcp/8TZy3pMPQ2vMUUTj"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.065456dd_1537301691777_0.10008858693471057"},"_hasShrinkwrap":false},"3.1.1":{"name":"@crave/farmblocks-input-text","version":"3.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.1.1","@crave/farmblocks-hoc-validation-messages":"^1.0.1","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.1","dist":{"shasum":"5dacc7d4680149b33e7085632bfdf5952ca43fa9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.1.tgz","integrity":"sha512-47AdhGtCfR3N/RO0v9+vKj1K/LzQTGQbuTbmSNrpAnjd2ymeYUmzZsTrgbqLJ5W0EAiNFyYFI3bwPjPcZzF2YA==","fileCount":12,"unpackedSize":50234,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboV7oCRA9TVsSAnZWagAAWDYP/1qRGM73/3oBqucLkLQp\nsyZKj1V7+N/NfdTj63atFokMc7saxNiCwLNVfHcuNd8f8Z0QsWBNOr+Zr6Uz\nyOOwtQAslO4wVhsKEih+Q0I4LsDf3MoqQmXXLzuUhhyzmTmRN51CbSJxjS37\ngviDaVMpu3997M/EK/eEV5auzFy7omxT2jY3oqxozmQSwPSC1whEbBs46q8y\nttwPF4bCbvohVhDZHWzfxAC675EgWxVfVxcU71RHJ6A3lG91b/vzgww+hrdT\nkmX5MtCnE+jzzEnl5RrAq4cxEIvDnS/0YL9TgKjEaliQgbt2BREbhxDVgGfw\nI2XWfpx9jFhlzIYF1UCxn7nI95EQw5xt/Wf7C0Fkv5VLqCkaNPTh/5OvuWpj\noJ2Jd5g73RnaBX/UAEBXMdZbY0aDNpoAiD5YbV9Cq4kXjsIcPYRMYELKxUAV\nynyaXa7KAJUMFJG4iqwqEpvRx8jBAUQWSudnEJCy4EzeKuy4tVZAEkCJKCAa\n3Nlwj0tFXgMiSP+EkKTcgb4DnY8vwmM6lPOIxNdR7fhx+eCFE3GH/p8Y0RJ+\nD3a6dXRgGCOv5FGhBC76taeoOxtDhxK7cseXpa0smuJYYN24XkesAx2YnIvb\neEzvlp9B7BbSGhkin1fw+0GgQ0d4bRkATG8Y/GOlyVsrJLdV4OpFstCExUzE\nVV11\r\n=+JYo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1k22mEcFjGSNHt0ZubTZ41aghmnj3uYSIygLH0ZwRqAIgdfNCctioy7MY2/xrjv1u5KAXP+K9nRGKIHWGQKCxgqs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.1_1537302247297_0.8551622311888678"},"_hasShrinkwrap":false},"3.2.0-alpha.72d25e2a":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.72d25e2a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.72d25e2a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.72d25e2a","@crave/farmblocks-hoc-input":"^4.2.0-alpha.72d25e2a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.72d25e2a","@crave/farmblocks-theme":"^1.7.0-alpha.72d25e2a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.72d25e2a","dist":{"shasum":"9c86a46114eec541fab2d7227cf781b403493cf8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.72d25e2a.tgz","integrity":"sha512-U6uQ54Lwa+D+NrlJp65cd8oLXHzd8Uu/MDvnFZWxZLrXkVLo49iGITT7nr8RFvKFbDLkUV44Ttr6an8ASovhZg==","fileCount":12,"unpackedSize":50368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboV8KCRA9TVsSAnZWagAAWQEP/AxO2+AQsd1f+yLcyIxP\nASgeyinAihmAAoPdVjcVIIB4SZueCIWLRLy1bvRsbW7TGN7Z5w3A7jedjuHE\n8CzhH4lYU4d1l11pYrVPDxVaU7/Qv8sXbA4X7Kbeq7EbUpt/DzL5HCn6mmVt\n5W5m9XbxPNLdHDm8oyX2JPuShTNAca+fqMLjRlIrKsQTQSEV1XO/GymriIFh\nPUl1jyv4NXXq9uEUBSJIgvOCWQknodUTo8eIcZ93W7bUZSXL5uuK9e2TcQU9\nQ5u5AiVidpIowyBjvu70rtbwAgc5wmXwBSH/6BWbBiCJicCCuXwHVk2BP6Ma\nxwAYwwM04pZE+4AQ4VtrwXUAHfZxKylwWskzUSpYs0yMwgUnlF5cw2F2wg1r\n8jaGsB/u/bOoEgKX5gyjMZSnQrq3wFV3TwU/x6bF3283xRAiBvXvUnP6PaE6\nbsUn5/U9r3AF1tP6kyQm4977tsMHEuve580XUkN7s0TOA7Tnz5xMNr7yGvup\nolQ/orhHOvDBeSXyCdlrK2GyD6FiLEnUlRmCPQiD7jp9IbuKN9i0YxABuH0z\nn6BuOdwpZKLtm8PXXbbS9sDwTshvk6etU7xFgn32aJ3Fk9O94Q8F5BuGf9Yu\nwsS2rqpjx//uoQLZ6sy6Xvn1RutOCVMz44TvuhO1qHFD/Vmnknolh/yk7M/q\n6lai\r\n=MhxC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkMTi03qADep+Ic9YT+pN+O+h4UnmXl69gA/yrffSclwIhAJ6jfmunTgkq3x+9FhNLb9EkHCbeVkknlOJJY+43BXBW"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.72d25e2a_1537302281879_0.19120163850283078"},"_hasShrinkwrap":false},"3.2.0-alpha.158b4241":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.158b4241","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0-alpha.158b4241","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.158b4241","@crave/farmblocks-hoc-input":"^4.2.0-alpha.158b4241","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.158b4241","@crave/farmblocks-theme":"^1.7.0-alpha.158b4241","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.158b4241","dist":{"shasum":"b753eb4b0a97f11303185068a74c3c0b23df8672","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.158b4241.tgz","integrity":"sha512-6HiEM4R1pl6XjfF8CPSaetDDJynAml25cQrvDgIpas9HWo8EaJ0+J6vJMamc4YNsuYIoxdYfQXDZbhAnEHV65Q==","fileCount":12,"unpackedSize":50608,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboWL0CRA9TVsSAnZWagAA0/MP/36zFkGglEvqE0kW28BO\nIcNPV2AD003ybYtXMGYQHnMF8lnAP7bJGLhwmLCXlhiWOXQzFzw0z2Pat2Yv\nTGJCrK+Hwm/8qWF55l6/KtMDei8Ni9TFQYvsoKL7gYQkR/cAlSVENe2jO5As\nxP+7qiqguT2BFw6UZpGXQtUDeGfDLUQA1t8hM6yNWeOlBYhWAn09vtgFul5p\nmQ3JH6PfsPTcX7trCnM+mrMJscG2QZopLJHcnK/9Da6hfQjbfeuB9Kgib9f5\nMeX/ukSmvwYdxJuW+oXYQ40XZhp4CJRojtGvkrbHUrlJ0CMd377Xx4lXbdtQ\nNCq39XRc9ujkI1dnmzk/BCQZhJknuG1qlDtoGn/VAvYOG/4pFx/VF6BaxeZF\nRfycONeDtwTEwxw7o8P7D2vkrklrNH91/A4dz+IMhKDeIUl+XNL51qrTsSTl\n8mcLK7CzqR7Nwi1kgmr3gbG9e8qICKZCd4K2CwczN7Lc8Y2mxL0d05768k9p\nw5EioOr4L9Y9PKdwl3wP8iAsmyRSICSnv8DEyaLJkP4omp6YNy6U29bGs/aE\nw0ZJanQGzknJjnZgMDlH8r7eSzC5HVcpBt6IUKiyB/5Sfzq9w0wD1YnUHmyb\n8bYt6497Oxp8wjQum0IUuWvOSiLpbTBD4FsKhAuT9mRXSq+tYuZd5BKEuU6Z\nLMO6\r\n=v4eO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXKza6+d+ujoZXq7Ej3T/1KBsDUEOAi7oVtBBA/sNHXAIhAMMbbGwWHitQZR7ROBuU7d7aRC+PRHUJrusr20dFxTo5"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.158b4241_1537303284229_0.5676898659506195"},"_hasShrinkwrap":false},"3.1.2":{"name":"@crave/farmblocks-input-text","version":"3.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.1.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.9","@crave/farmblocks-hoc-input":"^4.1.1","@crave/farmblocks-hoc-validation-messages":"^1.0.1","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.2","dist":{"shasum":"05ae2bdb9e91eb035b174c361381c847ec6a7767","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.2.tgz","integrity":"sha512-YeMPa7pPJsyhmNK8MrgI5ibFqVvXoX2qXzR7x2fLcB8jPT8e4BnFxgHMp2nIzfcYFlV41L9CEvFjuk251PbKzA==","fileCount":12,"unpackedSize":50474,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboWUoCRA9TVsSAnZWagAATO0P/3N7nFy5l8EiL4Qqjr8z\nIGOL7fZecpj+nzRsddGosIic2j8ECpJkPuSS7AQnxpaMJHI4jC2rXMF9v5Fj\ngKch1gvxrngt1RDbUZN9PgcBATUdo00ZGkV85+GjD5arZSAUar7UgwMwugSq\n3+TIjtMJw562BLpsGg7+LWoRtqA7l+1BgezQGaCF1gcrXIYuopmeila2etJK\nMzDo3DvnWdKp5ZNmqlGx8teoDpOfp8oq1/ycB84pcy/dfweCkA5bgCg5z8IX\ndSZRiHu/LQUlP4rRa9kQp4DmieAnKgK24veI+HLldbeqXWvnwZzP6WLbnYJF\no/fsESY2N3jmM3tmrNLh1WLcGpATVgxrkaKrK8A+xkcqBfFeTaMNIB1qSIu2\nSDsPzzupo3A5UCevzrOKclXMbki+I9o5Qf3j1WYEZQfaA8IqWHgIAFQ/YyED\nvxLSY7Cs69hozAQOrEn/0060LlxUHwIwjMtO5L3qf7XrJVvf034wUyK+QzKN\ncB+YsDYm21ciO14T1YB9Z79wey0jECjCHwCVPiCXUN9PDWii/stXlualUXL/\nmEM8zemxfB3v0RJaLLRRhIITo2B62VyMfI2kzGirL6aeF95IQHmTbrPyVHcd\ntqDvzfhfWBHenKjCHaAybTn8VIlWdSVCMksAL54KKzTxs4dUChD02LpvVLDe\ndutn\r\n=KX6r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDFU4WbYZEfXStyqWfXWpAb8ze57K3esnZZAIpjhiHi4QIgQZqwKXzKbwfIRSqiKDcheMbOELdr16Zv5pNS/ja8vhw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.2_1537303847979_0.24823598699298266"},"_hasShrinkwrap":false},"3.2.0-alpha.0e3b08f4":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.0e3b08f4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.0e3b08f4","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0e3b08f4","@crave/farmblocks-hoc-input":"^4.2.0-alpha.0e3b08f4","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.0e3b08f4","@crave/farmblocks-theme":"^1.7.0-alpha.0e3b08f4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.0e3b08f4","dist":{"shasum":"ae9df690a21a66d04739617ab757f457b8e0d18d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.0e3b08f4.tgz","integrity":"sha512-RQcLzBYqGcGFbgmAmnJawPvnS3rUp4/gPnY+vN0siFiAWRfcStUgQa8RHNHFjeilurSZ2bKS7XaPLNmxY6Mv+A==","fileCount":12,"unpackedSize":50848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbons8CRA9TVsSAnZWagAAOZ4P/0DviBXrsMPQXW7OZmmY\nI5VZwtSDGMXQgcmVhkVYxH1Uw9kJvJQcVetZrxuMAbnGcVmJzLNJOHS5LzDF\n4uUNAZ1JHrcqsurNSA+8m2TwsCV2rAHNn6bcdD5O/N4Xazz8YiOeZLuAo1pA\ntv0rQiMZJU4R8eIzB3QgWmRB5v7J9wSS1MZMiuBUHZ7dwi4E3HaLiIPSaZu5\nEwqZw3P72t8KCzBN0XT7G4FtUuNop1XKUCDHgP2JqorskLgwmn02F2qzfGfq\nToJB/ErpjAZLdYCT+Gtlq71AoRU0KcjOqzr0LGy9Ga7daH21ycJF/IhCvfqG\nJim9uT04+IfhV0mmHoNqALtZLObwwnpOxqt94EzclqEMhQMoTOJ9o0+LWKSG\ngtSpYKVjsFwUwMkQuJE9N/6HKerYRDfHwDrJ9OHC2UigSyRLm3Q38QIFNebI\nUbs6AI3IO25498RBd7FU9uAx7WXDiHrIiZGA4XKqli8PfmPey/UHOCC7HezJ\nWDk4ij3ONywiPxEuUPSBpbSLy2EqSURYNxQaUVtJqX6ynNwvkWV5atCewMuF\n4VoQ1CPIUnRp/nHKBQeMkjQVAK0DsXnwru4n18dK6t6ABY9cESG9mIeHySrV\nsIOxIlB1eo7VADAQrQh8PHABqfnYWNmHcZSW+pgA4H694ELpyywGncmQqM4P\nTQ2U\r\n=0QWK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFobTciLz5OfZp4CT3Y3aCHxIz2oI4YXR8JQjMdh7FiWAiEAp6yPEoZ4/Ynnuq+0Ch+TQtcoQbnrFx6o9uCm0hCfHEY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.0e3b08f4_1537375035463_0.5983807046016867"},"_hasShrinkwrap":false},"3.2.0-alpha.80c1f6e4":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.80c1f6e4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.80c1f6e4","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.80c1f6e4","@crave/farmblocks-hoc-input":"^4.2.0-alpha.80c1f6e4","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.80c1f6e4","@crave/farmblocks-theme":"^1.7.0-alpha.80c1f6e4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.80c1f6e4","dist":{"shasum":"d949335abf7d8ba5dc139f550267e4ed62a189a3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.80c1f6e4.tgz","integrity":"sha512-E1G1QIb6WdnJ04B9FYnMcUziOHPpP5zAu4LSwDYkWikZx1gRArvR3+PtQtFE1oa5sT21+dmIUaufav5fmOo1/A==","fileCount":12,"unpackedSize":50848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbooDJCRA9TVsSAnZWagAAL74P/0NHm3KZnmKqB7mNAj2x\nuMDXrMD2O/ff833O4yXkot/GCdVug5sRp2TA/4kf/KTjNisoo7n9pdMl7F2M\nKUT9eIIWW+hOL0mc/QpVIztGQTxpxSwGWr/+qxIB7TJOzHtNs08bJ+K+OP0W\nG9SQQbEstqv3XBMGwvObScvuYQL4KXXkai9Xb+zqMUnGP2FALaDMKe9QQWWL\n3+OUYZVkazWuP2Yq769Jp3yVSU2ghz9vRjMpcfbPeOHnQm2EAE/V9ncMlVgN\nBDuKjuTYcA6TpbzPFfl3hkBfKT9LkoY+bAj0VJYTdKy+ZBrp8/0MqKnYhzlf\nXzYFaOek7L1t1T0Xso9A/pBEzICZRAGl/7l7jNOpge3CDx2sy0F686zAIpCD\nwrBRgpkc6wJ4OQnZhln+KcKqrXGlZ4DcZVJ6GqFnwe6eTbtXxrm9Z2vkDuoe\n08MC2lgTKmH95YHsFZILMfMg2Jz+Bwn6jTGh32e0+H5u14LKhGXoqDJTEEOy\n1qdfExi1NfbLLP45yh5Hu6QlnNGIQv7JyD5DLbOPLFFZfHDtfFRjPhZFMsm1\ndM9vcdCP0APCs3BIxnMcClrl4J31n7w3pI9W9xVhdbKkSNstWtWrwdNbTwkO\nG90sXE4l0NIKlOSqH3DRVxCN4S6ABaiWo3aCgIchtkdz7ZvhoZzoVzhA9S9e\noy74\r\n=3cVa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIApES9BYG1nhoGYNl22tzHy8cpeng+Z1gsSPIIVUctqtAiEAm/T1js0knl34IWrfwN0h8TieGxTTcTq/xVUfMMZ0vV4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.80c1f6e4_1537376456843_0.5931521386246987"},"_hasShrinkwrap":false},"3.2.0-alpha.94718854":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.94718854","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.94718854","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.94718854","@crave/farmblocks-hoc-input":"^4.2.0-alpha.94718854","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.94718854","@crave/farmblocks-theme":"^1.7.0-alpha.94718854","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.94718854","dist":{"shasum":"767553e3d22ae3e251ce9cdf2e3333573e0f1051","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.94718854.tgz","integrity":"sha512-AJ0mHZGbZKg59CFsRQfPqSbbymLEGhcs8AU+heIJlO28jL2o5oiJtMW4ww4TSFkpNnWTr89JQzeSq9kh0Wd2uw==","fileCount":12,"unpackedSize":50932,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbooPVCRA9TVsSAnZWagAAHlkP/0dSYbACFU3Fawzozc1K\nRbDYZrTOIOceFgC86qMxTos6XhOqBjnbjScq4WEy05AkVHhUeO87F+2Z3d3a\nMT5EXt7Qe3sIP2I7p/uNmLbwikWOEkxQnQMXJDPi5mx1K6cePc7ZG7/EoTKG\n2gfIOeEEusyt2PjBIJFwAgHl/GaRD1mDor51Z3nud7pV+5r3Muqgg9cFC+Qp\nScS+l4/zzna28xdgquGQx2UkA89kROShVcITYpxjEgXDLLUSWjD8aPBWms7X\noZioBDbNwgwhDl+JOjdfA/gU+vhHDgBYDPRL1i5YfSnJ8EVJhGcTMG+dC/at\nn3E0kBS6LNfN7gw8PNdAQMeobxTX3XvfSIICy0YQoseDytn8t7zw0tUcKKoB\ne8qZBdn01SaJC7ny8H4fV9yiKsN8A2bkX7Vs6PGCjSLIohcnlpHk0OYdT2Dx\nd8n4sSwogc0r76+WLvvUEXcEy5m0t3NYtG2zthVhOOMVusk2z72bXd3BTwtP\nd9T4FnfevFBOmggICGKonyyIXc+vt+k87eAK7PyE/JyUjGmHbDiaOwF6NANB\nRDPOaJAffDEn9qbKoTPy9WZDw9cFXDoeYWnzYUnBIUJlUNYzVZLN5E+n8VcO\nDY0EFomqFUUQhUGhmrAy/AIEGZSVYRg3fwd03Ax//R3zIQPhj/fOAMGDIHyy\nMm3T\r\n=uC9r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCnYkbVfFPlpMBaFQTd5isWs1kGVPVZsXImHrjVMDCGWQIgHlx2G9tO5IUchRA8nxK/EMpUuea4UpvMLL362Tqk0vU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.94718854_1537377236914_0.25846168066597053"},"_hasShrinkwrap":false},"3.2.0-alpha.622effc8":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.622effc8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.622effc8","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.622effc8","@crave/farmblocks-hoc-input":"^4.2.0-alpha.622effc8","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.622effc8","@crave/farmblocks-theme":"^1.7.0-alpha.622effc8","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.622effc8","dist":{"shasum":"f46756e532eb61934a4bae2dab44360e3d84df69","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.622effc8.tgz","integrity":"sha512-SwTEXlFWVntt9NtvuKWoxlqmwwgeNs0HNOHwIPIflTw8ChZi7jm97gNUf2eF3EBY8CMAL2LmWWk/CvVkftA7hg==","fileCount":12,"unpackedSize":50848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbooTgCRA9TVsSAnZWagAAuowQAJLvCSUvtB6G8ihwqKpi\ne738hdI0coTInmc4n6BJ1AZ30qPOkZ089zz3EB7fjCS0kgM0nGZMIWvZ/z6G\nyAW3MGsoESr2MyNZPjPq6/XWZ7sdFkbUMUS0I99eQbRbuQq8ycUnaoU0/FT9\nROPn7NJxbIuH5cQrOy+mSj//eFdM/GcXoJpsN5qXgMwuqZ1Oo72Fmd8DHfDQ\nF0JMXSzDPAZBeqY9DSqjLUMzQ87oQH72lqMSzH0cfuuKrXOX11a2mxqJBxI2\nvYgrXPBAlgYc4k6JTGse3X9s2iqeEXgoIhH2vNj/MpsgLJ4Ip7y/7AYAlqBa\nGKWvH/5w6n7nJGFz9YESDj1za0Uwb/fjjPL/S6JKSjn7Gfj5Jq+UWzNPItV3\nuzhFCqRqjFTPqpd8V0G3BzJ12okznCDcJE0oSG0L9TeaQGm0HdPTCLTsntE7\nadz6UdfD8joSUCiuDr3nZAk2knf559LQbRw1X4RY0kRCVlaVGu1wbd1uXpd9\n9WRhQbThbA7Ozkai6kG/0OBxYG9uSlOR9/FW5uVyikyT5Hg0QmYlIhVfbgtB\nwG3t8mecB5dbMuLUYOmSCa67TL8NBxDzdd4hr65m02Mc/o7E+XOj37zIEgbJ\nR/oJ6Fs6zpIQvk9l1SDvxyWVxkK3mBJW6aHUkI+6qvG1BBL2VyzD35XBgFjk\nAzj1\r\n=Zr4X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFgmDIK1sZBG5u3CLkuR1ma/v9McvkgF1EJVz/yqRErGAiEA1hbdp3+vVdg0coGM2ko1NvFQvGRoXIvX0iigibP7ALY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.622effc8_1537377503830_0.2366458411979373"},"_hasShrinkwrap":false},"3.2.0-alpha.c648df42":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.c648df42","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.c648df42","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c648df42","@crave/farmblocks-hoc-input":"^4.2.0-alpha.c648df42","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c648df42","@crave/farmblocks-theme":"^1.7.0-alpha.c648df42","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.c648df42","dist":{"shasum":"a564805b7cd372d34e75d5f6edea975f4bae2753","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.c648df42.tgz","integrity":"sha512-cOXZRej2nhYNkjrVyAVRQhl2OPUURX8GzLARpkIZ2H2z/q8PU0eCsMfeuhBzVBNQ2YTcrRianqVO5YG9Da7z0Q==","fileCount":12,"unpackedSize":50932,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbooT2CRA9TVsSAnZWagAAmvcQAJds3hU+zruIFrzqs1Ry\nvZwUMMAEabVkIhlgWFnzOSKp6qPiO02ywaxA/35O3pXwR5duSFBiZv9pp5Im\nfFW8VbKDtwLaxH12P9zUHvzxwjo/iV5G73394HFxJu/OQU6c9a1cXuhRD3LR\n/0motoo6PwCOLiNEMGz6rF9N3G6hdVm7hwm5Y+bRHwb32dcafbSW9cWHfi8V\n2O3HjD9/0R6SjMWV9HJhL2afruViWY5HyaFo60WMHlCYMlzw+RFygKXlGIoa\nuqvo0SyrZ6Ef75aBaMaWtM/vQIeYaVgjjJqY5AODF6D9y8zzwx4v6FcRJvS3\ndtmu/OAZxms75nsuR2jCOVzAGVbZwomtoHFA0gIvxj4qP0G6vM4w7rsudXH1\nhKKpymkfDDxqlWtdWmEc2lWDgM/uaoHHiYDk7x3ufbNzFufG9WTYY4Yi8A6W\neYZoEB2GhPeRQk8sTT0nPVSzN8FG0XQ/cDMlFI5HPdPV0deQ0QS/30G1N8Vn\ngE32dbbp9Tbn6iS3DAhIF7S/GMJhkwIvHbrMh28Hj+qM4vRjC392D7vWq+RH\nA1OGLr/4f6x3YteoYOXLE/LZkyA/fk3Uo9pf07uHnHj1LZTDH/eElC9ov9cT\nZN+S4M8xGDk3jfUvIPLyyTvEffuwSq7X/KG7M3lJK1Jo6+WQoZFoujquGUpe\nLMSp\r\n=XjTt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICEgGietK4Br2horx9n+rMIhR5F24qm6yLYSIh7ws1gZAiEA2MFXp4BVuHigCh1ntfx5dvBF+CpK2Es0kEFoh8ElTc0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.c648df42_1537377525575_0.9113272679025273"},"_hasShrinkwrap":false},"3.1.3":{"name":"@crave/farmblocks-input-text","version":"3.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.1.1","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.10","@crave/farmblocks-hoc-input":"^4.1.2","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.3","dist":{"shasum":"6f7fc843571427f7d6a90e6e08e7e757c0c69aaa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.3.tgz","integrity":"sha512-bSYk8av4CfhQc1Mi/Dy9REF9ZgCgOrk8pCjkIel1TuSQ+1we8zxb+rw/eYXGzDPU5KPw/5xbZsWLOYiHpuk87w==","fileCount":12,"unpackedSize":50799,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboociCRA9TVsSAnZWagAAOPgP/2IYtuX+k6M2WnpX0ObN\nrKdXmG4KGO2NBpQ80KGs5QMuRTitYsRZ9LNDbbepOl2q4rGS+L0nLEBsN7gc\nfCBGPYwqt+lhRpCTaecxdYLOyTACD/ylivRKSlxNKGbEdQ1euyfi6iDM9Ctq\nylpEcxAG9+jxwcNahcRNc6p7gM/FdxHMRvzDKw8y8SXddjGWwkGilZth4reH\nnwq/ei/8/9nz3WHGvnApbuzQdbAkvrDfrXsAktgynXJQM3dWP5WCmrZxNM+p\nSCzzwMQep9h7Ha1UrNDHm7G8VmBy2iOubETmA5XCwIq28agdUL6pUf8n6YEi\nDeNDo9KxbX2/YHXgD/mDpDOssPmzCzawL31UKGLm439idMRy03O014ZECMkF\niwsh005P5b8KwNU4b26VgstBH3ro3RpYHk7C5/Yk/b8+jGEfrnavSoyyacXD\n6UhBMD6xyi1UJDLTFBLbfKBUofXZ1jbrZxGla+p20fXrAM09oR5o6MYGBFyu\nwTPq+BVQrjiL5s/SI6iiZF4jpWMe9s3jHGO5r0JuGszTvNgpV8oEbfBrwP7L\njHe85KZ/cylxjA1uHXRcEgIlM84hEEUXpBqoKSYZedH5nLn1cICLf7ACa/0v\nJjbqKfr2KopJlT3wbLIZFyyS8D8hKafHMPj4BRtMIS7Iyzt7AtQmiIHQmAy1\nqN9K\r\n=ad+e\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDOb/tUGvW5mG4B88ursPQOZXaFUL67nOYrDRfMIwSRQAIgasn8KfRtA3zM9sYqdpI4E4ydCJneapB7P6aCVipe53E="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.3_1537378081337_0.4010550893027709"},"_hasShrinkwrap":false},"3.2.0-alpha.e3dd44ac":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.e3dd44ac","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.e3dd44ac","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e3dd44ac","@crave/farmblocks-hoc-input":"^4.2.0-alpha.e3dd44ac","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e3dd44ac","@crave/farmblocks-theme":"^1.7.0-alpha.e3dd44ac","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.e3dd44ac","dist":{"shasum":"b07e42bf6fdbdf108ec60b23e50f6013e5be0e5e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.e3dd44ac.tgz","integrity":"sha512-sb2+Vs9nyQX6OvkEuVP9lpaRz7x++6aT6JJiZRIRiZK+yTiEJ6aBftJYPVC4OMMRi80Ninq04qCGElwoo3NGSg==","fileCount":12,"unpackedSize":51172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbopqoCRA9TVsSAnZWagAAcFUQAIQYZL5fMyQIXSYjdx2x\ntWFu/MUWHOhqVDTOtr/DmTPdUA90rmcs5mKNBiKEVONUx5HoRlp2s2pmqgLz\n9h4m7TXfLBjA+1UXGq62s7mpe1YM2XL85Akk8fVt0mOUWEjB1UWXdcabjnjT\n0/uCSS9UcT+ICfiSBS75++UoDJDY2E9mezaoE6eQkK4qnkEr7+CwhZvKuU+o\nhfi9fLGzuaQ1ddQBoAPffVpGeeUiijZKEoBHBJ8tR6Q8b7OqZj51QcQXSOBQ\n0jxTCwCRzUk3DoFNtRjyfUWTnQ4D8G/birH5+HpyxbTsA7qOp8Rq8lIP8rJ4\na+HwR2azncP2tJXTz0Dkj+IVgfAINXx/fwCXhB+u7rFbOJpozgW9l8JC9wSP\nmYcksMuTFCFqI8rx0fJVLVJcC/adNcYQ5mre39vOv+HLHIUsX27QGFv29cC1\nX6cBNfzfms3+KCQ/Xc8U2lqR7gL+DVXTTOFXfV0t460hj4poAatBaO5w/iJT\nRNjFQ6c4KE0RvXNbQWzi6GefdwiHmy4MwZk+6v2YZZZFnmMez3i8/qy8A7S7\np4nyAFsYGPLo/dpI6IYEEV65lFV2UlIWOt+sMNVcvc9VvIHjyG+SChW7DRzA\nE1Jp7/rh2rbifwPqFtRhNR5UJzpzXNl3d4nVLXsy4GgDzwUzGf1g9mbNemNG\nUvhK\r\n=9ipJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8VUdI++9VvLy+P0ckNwwuHJNYyQsW6l/B7uVvuOfjTgIgbcBeUcLUjQOdpJfWiyRyCp1/U/W7ve7EZb3FebpQY8I="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.e3dd44ac_1537383079770_0.9759707199212437"},"_hasShrinkwrap":false},"3.2.0-alpha.46069564":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.46069564","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.46069564","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.46069564","@crave/farmblocks-hoc-input":"^4.2.0-alpha.46069564","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.46069564","@crave/farmblocks-theme":"^1.7.0-alpha.46069564","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.46069564","dist":{"shasum":"411c7924f3052ca52a9c501ccabce24a6e463f22","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.46069564.tgz","integrity":"sha512-olo/dHJZI7+MY8CmIxXn5GcVy0kc7uUy86ub61K1ckCUagKwUA33CFLoBoCaNS2sf6Qe3PxiR6pqxfWI//6v7A==","fileCount":12,"unpackedSize":51172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboqXsCRA9TVsSAnZWagAAxuMP/RWxIX47ZRr3fRs0XwGJ\nRuh/4EKTd0HFC2nB+v20qu68mj6dJjgtQfy8SEPDexzArtGVVxehyXJb7pNM\npN3Oqv+P+9lX1RdgC4euj/dNaZF17/Pqy4srsgOZzzL1GTKndALLebpe7X3O\nGYCF2VJHIZZIQUu0gXyv/D9sUHpg1V7y0W7KAD9F8tB0VlxPH7r003lYR74H\n9BS9kMS6iJXQs+5qF2jn9HTjRybBQukbpJ1wYThFBNVE024E6t5Hfg631A1M\n+DnMY9LPeRrIS4dTMiURQpDTZsjxCSyBbDx2WSmZOGhbb6EFTBKVBQTzas88\nJgIqZcUoVDb4N1LXa/DFRoz+NJ0E+OyB0Hj6qOec5TQ5K++lAHk+4dDMkpXD\ngYdNs3xaJg2iXXSyldV8bki12ZV6NpyI1PSM9tUl+mv7yX3lwL+3dK1nPyDR\nJwtdnJlZrqAAx2UXNW0oPUWRYBrxMxSc4FGaQcna/+3v6FmUzXzAbCVCLCOE\nSR2hHBwj1LMvZUbycgmX3dxaf8Umo6otLePAHiUlfhcktP59rg7BSTqFOZ5h\nM90wEfO97BUaKnLD+/h2JJ0ns2OYZJ832AGtPsK7NsWHReepNyy2JpCPqH6t\n7XDfqe+Kixfl2BYTkcmM4v7h5rcBqp3jyBxXN8h3qEF+xGH5J+L5oXel3h5H\nvKxI\r\n=vdxM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCII6nIKOQGZUu3+8MAdwIQ5ZoI0p4MEkCOMe2lEUeQ+AIhAJtMNmJxGGwtvVN6kzRTfsz/KtYFKt4zFMSx1nB8waSx"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.46069564_1537385963935_0.6166408376802963"},"_hasShrinkwrap":false},"3.2.0-alpha.2df9def6":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.2df9def6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.2df9def6","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2df9def6","@crave/farmblocks-hoc-input":"^4.2.0-alpha.2df9def6","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2df9def6","@crave/farmblocks-theme":"^1.7.0-alpha.2df9def6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.2df9def6","dist":{"shasum":"1af2a5b38440b83da34e3420ef223686cd0502d5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.2df9def6.tgz","integrity":"sha512-ahPVOezz0zKVWCeCPdjzdBMOICQhU/0cdPJzr7aiTWpB/jo3oALbItHcU9U5oFqWFcWd2nnNKa0m3mRf4f93pQ==","fileCount":12,"unpackedSize":51172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboqZMCRA9TVsSAnZWagAAPLYP/jC8qQTLYwBARdHHJIA5\n64YlBwtYxf4bW4jbUw64oxi2fEbH12rr1icLOX6rzqqKf5od7/wBbHtAGfWk\nOTvHvrEZK7sTCsNzAi+CwJxvTq+NkSw/10rBI4dVitYkE7VyKULy8p0dqqaY\nMmJgyaDdMfQnalfvjo0KH16yDe0iH8Db9xZCOwfKAhr0F3WOFcuwY8RfEuxk\nYtJlIQ2u07VnjQ/IT03NIOpY9IMm3oXdF3ipfpwzlSEPrTwYQqEclgD9sQE6\niVwrR6wT2gN66v52BwAlYrz0AVEK2awBAFqOGwiCJhYsJPBlMbeBEZ466XcB\nXVv1D6OVjq6sBqR0ztjtfkfM7oh7+82ssT5ljVqSpCnHyMNBdsCk2OuDBnnA\nSgygJF3RfBmwlniSQrv3lzRi4iulS9wGErUxnVv/gV+w3QSUxduE7HR/m+VB\nxCyBDlsxgf/5rYiW4FPNHX8cF89Duj+QOE64IiEvm88mD8wB7K+m3kRb8cWj\n6wABBo/jw/gCHRkotE0Sx4ciTRlBLXGGP/YR9HnS8I/1IvkWKCPlrh1vSsSv\nlp0peVv1rdvkfm6v1Gyy/B4q627R3cKp6tRfX5O94FfM5NGd0b2L7lZqxYVr\n9dC/ffWTnKt/241aFiQWWM5UOmyiRJ8UMJVQlRVMDrd6y2eEEKfa8q4OOTGw\nG5/I\r\n=nwOF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICbeusCoaY9H8JGHUIJD63domopNoOJDo4e3RZz/ywC/AiEAoRsn11ur3PktgNodatL8IyETi0Ns9JuNK3jQyfVY5kw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.2df9def6_1537386059809_0.9111534416257328"},"_hasShrinkwrap":false},"3.2.0-alpha.ab5b6155":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.ab5b6155","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.ab5b6155","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ab5b6155","@crave/farmblocks-hoc-input":"^4.2.0-alpha.ab5b6155","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ab5b6155","@crave/farmblocks-theme":"^1.7.0-alpha.ab5b6155","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.ab5b6155","dist":{"shasum":"306a18b38779852a0b5a5ddfb7bd0cd511df0b38","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.ab5b6155.tgz","integrity":"sha512-GHQOAyD+Ehj6oWelX3rwaQPCLFmMhwVydOERjWb5eH3V4Jaa/mwPn3hBsGScDxqoRpOwgYPpO8g66+AY7bZ2FQ==","fileCount":12,"unpackedSize":51172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJborRTCRA9TVsSAnZWagAApQoP/isHNwho/xAvt+0gVKTt\nvKcwK9NoF+ERq+57am0teTjTzJ7RS/Ld8nn/YJMVc63Rfo6YC7sE9mawLVEU\nK0uzoieMtkBN5aSX7Q0KYM8ifXm0c8a+BiGouMhoFz1CJ2qMOAGgQZ9seZC/\nrBh87T6s52UXp+tpTWqwPFpjHBzwHEDbI4ASMOKtRaaImhHMfddKx/Qgbx0J\nlA/pSy4oxtBBaZz5OtomBqgQresRxAvXxpfzDmIZ3Y76GSCACVSV14bIOjQq\nxGFqWy69wQFX79eIiNK1OvUyYHu/Zvd9kTgntYumgzCG5uuDEbejFJkgsmXq\nMYjJImYz3sGS7RdsotN+1eU24qwNSovbmMF6QNkTWWY3R7Y5AykYmSWmGVb7\ngjO+eDcyGuss7o+q4/Nwwg4BtN0iV+rqvdJzqvpr7jQcRSwdeTGct6Lvd+Dw\nPQVwwwUys2JXdAO1Kd9mhORemfusii0dWCr0M8dPO/0JWcbJgnH/8L+llmkc\nuxov/FCuCvL2kGOqnKWbeBk01quBlPD1sdGbfJhgFleV/D6SYHXXXSimTZbU\n/LRkt6XofPpbQED4PsAO+hxnAN54B3d6h1YI3vOz1QoJJq0l2/0mqj8Fmhyq\n8oJi6dcF+Nxsy8Uv75jaRtcxJGzlYHrPXxwTDoMgoduy6TML5UTapdRly/3B\nmLm3\r\n=PlEx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICZeBm/HvMKOFxt87eJAJJ8AcrJUF3IW0AtC/mKYqe3UAiEAtp5nDM1tyCimR4gYOla0tRYm2w1JP+Whn87M1OqkvrU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.ab5b6155_1537389650744_0.48665812401233377"},"_hasShrinkwrap":false},"3.2.0-alpha.bec2fd0e":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.bec2fd0e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.bec2fd0e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bec2fd0e","@crave/farmblocks-hoc-input":"^4.2.0-alpha.bec2fd0e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.bec2fd0e","@crave/farmblocks-theme":"^1.7.0-alpha.bec2fd0e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.bec2fd0e","dist":{"shasum":"7c3634ae70074a6bf99b0f363e45130ea0ede90a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.bec2fd0e.tgz","integrity":"sha512-Cknd9tn5Es1E4KfsPyNgyGho1auUsf8rBCt3tFFHc26T8wvJpNiwokQNQwCZIjFwgFx1EJUrpyJyPfxnwXmNQQ==","fileCount":12,"unpackedSize":51172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbos8hCRA9TVsSAnZWagAAzJMQAIxC+Lw0EB+ep6RolwwC\njlRXnmmwLeoigJg4kcFQtgpNyR2WHlb/wcXADNyaXFOBivn8yIeIIYEPRXB8\nYX07klcKAepmcICXhrc4JwAgLQV1vdqh3FruvDQmBazyQbnDVMF4sHW4H3C9\nx+h7gtaAEdPieYtRnN1rIvOl2ezXalZFh2znMOfDat2OoAB3kgzpdiL9WQ56\ncTBdmzjGeNzb9x1+3HNjKlcVK4JxLeBt2wT+HHm3TtikuDoqTZ+S1TsBBy66\nkM0bjLqSidI/gslMKEHZgkjEuuu0iLfQXm9CFASsDwmTAsZAD39En4SB8M1z\n7cj4KEPAS9ZJ133F7Pul6rfJQUw/kWz43vt2lB6c5JEQcRGZkpT9WUbe8V9t\nhq+5XKehNoI1HGhcCaF8cy89XZyoQ8jSbFhUoQGcYc5womJ5PlqjakCTwIde\nDOiTcPahG77HzPkGKRSAHso/CbtHnKE3fo+TzsET3yuqD4uYd33VuPq+OmWA\nKEhXQoHHv1WF4UzRlZd/bSGAY2pICOhLWZSV2Bmu8M1IewNXZvgA9rmA2KQ0\nOkf/lkubMG++Ht4ooDcL/tch9whDREs8Ln41q64TV06MM0apIy8nUDuFoC/b\nGwdLL2Lvx2T79DldPxhzcXFoVLsVnFMBsao/G0WK18e4ypZbzl92h58mmkc6\npwTd\r\n=Z1KC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/h46uAq/VtLtPvzj74pJE4PNUgarvBuolVxJ8d3K57QIgTVMTkW8Te6bN6Ej+wlwH4Gq46zjJEoILWnikPP79tTA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.bec2fd0e_1537396513107_0.18059372737401524"},"_hasShrinkwrap":false},"3.1.4":{"name":"@crave/farmblocks-input-text","version":"3.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.10","@crave/farmblocks-hoc-input":"^4.1.2","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.4","dist":{"shasum":"5a5727906effc75a03eddca58981b57e5fd1da45","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.4.tgz","integrity":"sha512-L6o+g29asObd3ZOtIJ3adfvKpFAPHWAaUF6L4S0G6Z9ombhP6dMneje9pyT8mrMqfNSg4YJgFN6nfR/wlC55xA==","fileCount":12,"unpackedSize":51039,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo5p+CRA9TVsSAnZWagAAEPUP/2EdITg6iyClOoM42cf0\nChdwlU6AfJyS2deWquAhecvAyy7GC3sn71hbUU45YlA+b9kbfUOqZlFzGdeJ\nQ6iO2OY5lMUncKYfcVgOq33ENxmlx5A9Scnh81esNtHFv9aKPiRbxgwVbNBl\nXDjJl+uU1n9Pa2FJmtqtREtQczlG6KzNIFG9YxdsY0HSSBgd56SMBkSf/jtY\nY/OkvVUfq5SZrmjvHUIWFinJW8a5E6DaUvZSAjPl0be8UsEMEwK8iIhsgcPw\n7VeZTfzTSjXAd05UCVVcnMDM0jQzCrFVVQZJ9OkOrIUbp3S8tlcggqY6Gote\n6I1DM/6jI62qmBopkU69Ryp4uWGASzY0ls9uR0MWs/HLlM+Ijd6BvXHxDc/x\nMNV8kYLX83t7URQ9aDD+TQjTLUU1CNWu/dWQyuJ11HQxoI9f5hXHy4ZioWCM\no5ZTa2GniwPUZmIu5jv1qW4nIHvAXJSfnQCEt+d/vU4u1pyo7KA3gpRcq0w3\nZ9O5wREjx/gyV8r/VfUwCb4KK+vMqGw+Zc/qE5ptjkaIPHG/XYUxMWvILkFl\nXSPh722hQYQUYyOMvJu7yUY8N1/DoPqG/AwdQqjM44770YOrLd6YS5bmodGO\nqoy5L0jjCAKC76lE8QYo6m3W1Bj/Z6oLUZpO132cIxMWFBo1ApWmb08tfwlG\nurRT\r\n=vdxQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBjldaoL99sy5UWk15MWp1TxJNf8dABoPAAT5S4z/uPMAiADiqN4mC6JO1E7OXQRvm8cDIwGsw2d3QvZ+gh7kq0Wpg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.4_1537448574041_0.44271405744838743"},"_hasShrinkwrap":false},"3.2.0-alpha.3cf6efe9":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.3cf6efe9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.2.0-alpha.3cf6efe9","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3cf6efe9","@crave/farmblocks-hoc-input":"^4.2.0-alpha.3cf6efe9","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.3cf6efe9","@crave/farmblocks-theme":"^1.7.0-alpha.3cf6efe9","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.3cf6efe9","dist":{"shasum":"693359a9f7b738f47560cd924c070c3a4c668b14","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.3cf6efe9.tgz","integrity":"sha512-sbu2fd+JtNSx5yn30kybKaGzJOMMleqb9maQMbq+IDZnXcPFPsQg0hKau0nbzX9SVPCsQtMloxYn4I7FBrEoyA==","fileCount":12,"unpackedSize":51172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo50FCRA9TVsSAnZWagAAOasP/22OfTmIePskWrWhiKeO\n3VV5H97EepEAAAtl+OXAbRF0qnmNmsnqzFUUwWnbXoVpeV4M+PUfhHWUPi/A\njX5wtC9aevEfjGn3ppvfGzTdrFYJY66xyqjfzaejmv0bBCoiFi6QJyDiyaYO\nASIC5Px6YxcCT1xR1pOI/VhXKz639PkIfU2JIOH3mG+AWEOV+Eu4F+B3D/AE\nM3lV1mfaFX89q6Zp8WojSYx50F7NXVk+LK9nwMYiVJ06mzO9kBHKQcp3Hret\nnUdVtuBtmpshqksG4UqIWMl0eM6vP+gXvAea8tmgBYYgm6tCUxH7gVTxW6At\nnHOCvwi4Ogm8K9RMFtIh0zYz51vR0usR9nTwtqGzBp83PMN6sddZeSrGAuYz\nEao7w98kOSxMLFS9j5eUYMkR5cPwva418jTWuKdoXYuO9025b3gYgCp3y1ox\nFMYrqQoecq5C1LYQ1YvY0hzXs74LdOWWOKH1soM0CORhT3abcOnJPTZKpTqj\nkmPfg4jwE/ummp/lTNx1QpSRThWNJxOND65ftCi+4CDJuwpXhNhEnqzWve4Q\nPOA2mHraMKSZMoy2SKvgC0E5n1VvwhDezL1m6s2QNV7qYHurNnSkAvmA5isg\nnPt+OREot4/PKse0RM6fspCV/ptG0qmRKCuitjnCy/HLSxoXf2nCYPYAGrGg\n/fFI\r\n=6qGB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkYuD3H/Hm2pkCMu7mSxmyuZKzIJ9upuf3zWTpdq4gQgIga97Vtn+uOqsb3FVQm/Z55Gvk7wgi2AQpozjdRnLXrjU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.3cf6efe9_1537449221127_0.852052543565073"},"_hasShrinkwrap":false},"3.2.0-alpha.95638ad0":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.95638ad0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.0-alpha.95638ad0","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.95638ad0","@crave/farmblocks-hoc-input":"^4.2.0-alpha.95638ad0","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.95638ad0","@crave/farmblocks-theme":"^1.7.0-alpha.95638ad0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.95638ad0","dist":{"shasum":"f01fc1c5478f147102e08d3162a6685f56339682","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.95638ad0.tgz","integrity":"sha512-wrhSML53OG5HTBKl+CgndHQUMMoe1A64oERO2He1GsUpVZPYiCYig8k3ZO4PmPxAaTSun4YEmc2yxGlfvxZtZQ==","fileCount":12,"unpackedSize":51412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo52DCRA9TVsSAnZWagAAghEP/2gPdeGULnZGip4mZR63\n7X2D/osBT8JPFZQsA8mxHpgsPrVvzEGFpCM85gfN/2eyjW4myV4MLRu4Avxw\nq0whgvquAebM3u3jQcspLM0joSV73/B8HRMMNsEodduw97IUpMfAMlTunnV7\nLHJaIFoGXIogjL7A6Eq2Ho5hD3pa82W8pB6VsWW3NJJ4sVS7PAXpoOG/M9/a\nclWGTTy8kvbCtL0j0pILqJlaQlF+RhB16Z1xXTRhoZWsWxJGXJuTVuoEjmUi\nef5i3jU+q1Z2WqarCP9WJTdNiQRZ4sNXmh4IlQY5uVnMujv5VRXMI9+XQIaw\n1e9dDagglvSd0yBWUlxE8D4eU05kILlyusTSwUU39GFR7Z4JQy9RAI84cKrD\nnDmoPYQJo77Jxs3HcOjTyn//B4G3dGIqjqgt0IQB+qomPukCxJDFjb+HG0Nn\nIzn9NCUaHC700s2yKd7Af1srYMlVIUISnttsS0zW8GTN/0CWjHCdBXF3fFU1\n9x+JL7hvgk2idt8bOHWQlWbHQyEdxn3t42nJNQNcFPTh33EofMDZABh0qH2C\nkr+SnuLfmkSgX3h7G1TKz+xDOM1HHMPlfqTcNz/UHo+w0173wjhL2ZPr1e24\n4x142s6ONKTtBwfs0qSkhAR2bwMjFsopuFEvczNDD/RMzlf9c07B2lXt8kEX\nmzZZ\r\n=6MO0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVAq29PBqe7Mra8ZweCJppeUNfj5kHt39pi712yAOoIQIgGrro3xUqxnb3Uc/oujlXgsDjI5kQYTwoeDLnpwBWVBA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.95638ad0_1537449346666_0.38634764460122883"},"_hasShrinkwrap":false},"3.2.0-alpha.24783ca3":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.24783ca3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.0-alpha.24783ca3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.24783ca3","@crave/farmblocks-hoc-input":"^4.2.0-alpha.24783ca3","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.24783ca3","@crave/farmblocks-theme":"^1.7.0-alpha.24783ca3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.24783ca3","dist":{"shasum":"d5a586101c6c2c84db8c3764283b5f589441b228","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.24783ca3.tgz","integrity":"sha512-6ad/2VSgyjny5KC/ANMOQhXZQ+tLSroqez2haBNBPWu57n/J5pypKUVs22DSB4DkBlmPSV3f65Xi0J20WjimCw==","fileCount":12,"unpackedSize":51412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo6B1CRA9TVsSAnZWagAAbYAP/3Sop4mK2qVnByUI7aHI\nJVzC3+abvZ8xXNH+BcOj85TLSh0lu3MBATB1J/0K56DWicb+Et9EJsJMwr2u\n9jNV2S5MJWLXgGx8Jsg2xvnByOTibqgtJh6vkVMGCFafhnNdOiUszBGMxJ6D\nnv1UniaDZYC/2QPxfVOHKY1qGcud+rpBEOUv9YLMQmXdFC+idoL/MdML+wiv\nFtvP1RpCTtTTb/wk72OohhYI2hZM3UY0fFkFBmxLzvrTQbrb9ZX2DFksFmHh\nSmIP93JZD7vBDGptG8FKL+mhVxrLi5vq2fnGOpxnDc4v1VCn/g9vBbU2PEHK\neO71xyB+taAKM1Ym8iRPG2gBj7mQHyuKDfKO8pu0KntUdJRCPK0w6OWMoYy/\neq158aUofrIKAUlaSRv3XvOkAW/Zugqr2T/nfOXaNO0+8NKmmkb/c0G0TAf7\n+BzEuUHiUMrTPr1n5Imo0fzWErR4tdFhIBLArwt56S+C06/HGCIGrG/xi6oo\n63cwqrYHNGn7/MF7hpaLrHLEwaRneyxQtWfejv+uP+ruLcs/sLHhFrg9Q+Sh\nFv3rv4fMwdNbcVEZrnjftNKL1sjRtC/qiBQIsjP98HP33KuiWDt6696DJIlK\nWpciCbtvPh489B37RzpUvexX6ABgQnwnR3s4AmlO+Drh+uJGnvJ3YDkKO+KW\nbbMO\r\n=Ygk+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9fvUm1GjekSfV0AOnOiNwhOm6DydDyKazKHQySM4v6QIgBqxBC4Epu/NrMhZyd6sJhu6FupQtWONBSmpPlwf6Sio="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.24783ca3_1537450100275_0.4382962997456208"},"_hasShrinkwrap":false},"3.2.0-alpha.9c01f451":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.9c01f451","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.9c01f451","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9c01f451","@crave/farmblocks-hoc-input":"^4.2.0-alpha.9c01f451","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.9c01f451","@crave/farmblocks-theme":"^1.7.0-alpha.9c01f451","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.9c01f451","dist":{"shasum":"ea92a9610788d3a1b3514a840d4e6ba1f8d9ee6c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.9c01f451.tgz","integrity":"sha512-OFJekCBc5HjRMpsow+8XRnm+HiyzEQ6be1sNiinkxH0+uD1tG7gP0XeN+r2sXEsZNW+DU4dawER4cBTZC9Jw+A==","fileCount":12,"unpackedSize":51652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo6KXCRA9TVsSAnZWagAAVngP/R2OpELIHaxYc9+wtyMT\n1DP4ZJE/558hi8aNLspElOHxiy7Lll7dPIP551xlZSK6h3lSf+RUTbj9n/R6\nJLQocYapdx0dd5PW6gPX3qyDJUgVvZ5X9I6gc1FqCb3CbxBLRmECGn9xINqW\nz+tqQZbFEYiZ+IwW63i/CLl95BxIYCO7jCC+RAdHdfjTPKKiqoArWG6B8m7D\nsElG8+WHZMDoN4dY8oa7gFET4OYrdo97/gH3CpwK8HCLr6bhvqSrnuzGzIZ3\nTaPTe1RsZ/pXM510EFpa3k0NkZxPX+orUhSasIX8qqOmbiKesg/2Zc1KTYOn\noRWyaEkLzll/CWFnxImgffVR//jBSFRG+50LQSwF6OGgURopAu8rtbtG1zkl\n9byKM6uby/MP/WwDZ9yOq33+ju/LQW5PvXUz0my0XpreKyjZ9G7FsKsB7gnt\nJ+jvMEKCI1hg29BGDLuX/TrJg+Q42eqblU0rSuJQjtJYmaff3rF+VaIw6BBH\n+NFSLmGQlchgMM7EGf8322jzWm9nUfQPydrPZIkXmcM7yi0+BD0c5oijdcgq\neojiqIoOCt/dP7uSsA03Szm5zWzZWW4XnsnOPJS+anqL9UZEKHXHf4orc9C4\n/4RQU+J1KCeaPMiiuLl7kBSJI67/I1v+OHJ75IdGlObIeYCqJWcDWICbuBuC\nHm6C\r\n=kp6J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnQCdK09/JJ2HbJlI9ZD2cXBjYFnnLJEoROuKxS3Y5cwIhAOcaAWORbiKLPViSqPX4X0CuXG1pZ9Ilv6/NztHGtc+N"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.9c01f451_1537450646546_0.08602829552537927"},"_hasShrinkwrap":false},"3.2.0-alpha.92e5355c":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.92e5355c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.92e5355c","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.92e5355c","@crave/farmblocks-hoc-input":"^4.2.0-alpha.92e5355c","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.92e5355c","@crave/farmblocks-theme":"^1.7.0-alpha.92e5355c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.92e5355c","dist":{"shasum":"4549fb91edaea079476a96d51fdaffcb5ca0daa9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.92e5355c.tgz","integrity":"sha512-+YDW+7JrNcfLxZTtF7Aq/g64Iulsg0zw6gKa0GALrxBm+T9XAuUmpUaMSv0YsxDc+D0CPg/a1UGxG8FrEIiWXA==","fileCount":12,"unpackedSize":51652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo60wCRA9TVsSAnZWagAAIZoP/3INDsUwKqbMGqRbxDWe\nXR3VOBKRFLx238VRdszXjOGPgWBvvbXUHAgkktk9oGzmvTciXc6dTkJTg2D3\njPls4kf5gIJOIDCEFVT5efMkzgtaVhmPLICx1gZX8c+cT48MJfSFHhgQZS8r\nSaVK5h0JQBpN4nazgWq0YtoGEXDLgT0dFiTr+wq4UZC+/2XoKG4CgPoQG6sY\nD3X2Vh1Ha2JBWTmeC3rebZAeHDAW8neaGbTooR0olJmDfBEr0mHMDdPV8eTW\n1yk7svDoYhKUQQ4J12+R25YVnuf4NaTXwScT+irzCoHkWsKenZwp4tWJfOHZ\n7LGeVtZ4b6LWiQBLVxeznDB1g0+CUfFOT0HEqVimcXULcB4Fid1wokF5uj/m\n/JlEpbBRm86UDuPol/jUBdpm8Sh2iw26v1/xdTE1cqiRAZNqXybvVIND47Ig\nHefOvE7KTd5LhBcaKcdGrtrNwDd7iEH9P9yHSJw81eWgYyN/sCFqQnNE/43x\nos/P3zhum6caOXjhjDW3Kzv980JjcT+h0AkhMo51Sx/fdTva4O9sZsdumcwL\nBqxegX49u1SKp1zMVeFAYwISGE9+/N/e54Y3MKRtty/+xC9IJc4QgdP9GgYA\nuLv9BlazbV9xp/y2efZXZY+0nt59zj41vNTTa1vWNVc0LB7YUWperKKHvp1H\npIT/\r\n=Px2q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSn8lN2X/H2aPzJ0GmglUnr57tt63fhdB/j4moIlYg9AIgdVJOKarr9qW9UNyl7dWZG1kqoIkBu9kPJyD6/1hqclE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.92e5355c_1537453359902_0.5152350535690358"},"_hasShrinkwrap":false},"3.1.6":{"name":"@crave/farmblocks-input-text","version":"3.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.0","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.10","@crave/farmblocks-hoc-input":"^4.1.3","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.6","dist":{"shasum":"c8602a1c2c2f94580356c281f6d5a6aacf350bb1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.6.tgz","integrity":"sha512-y+ZnEe8bFQUZPXxrBYzNJuwg7tahZLQaTroruVaUZtIvxK+k8wfA+34JTUjaKrAMJJctpEXeK7nEXjyGS+Aq/g==","fileCount":12,"unpackedSize":51519,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo7APCRA9TVsSAnZWagAAtywP/1+1Mzgajt40NyRYsA/A\n5Qw5/S6VIUaF4HXWeY1yHfIK3RT+Rc9RAVC9DXToqxJ9XHUMseDEiHP9yZF7\nJjewgabZUIp5fvUh7n4hDBs8hD3WNlmEroKDkEazZ3n8fSrp+NU2f02cAEls\npX/h1aoBr2+OzhJa0ezTtmeGmIspbqIxVz5QBJwbk52RhhNC0WxEA2oX+xfW\nNQ8KuQtF2fEhQ8DihGS9hCYdU1Aa5aIF6hHEPJCjANd+e+XUuFgZfpDryItU\n8ltuwql22hlBzDZupATKsnmUchiS74hJ1rG07kZD81i3noNSHOOGm97lTYCs\nUeA1SLHdsMzlccSZfyp/rdM8iknOyuaSv8TJob/GqyWvcEryMkUove9PM1mC\n1772xGObUnMblX+/xJ/bna7tuurRokzO44jSsSbrAzuAgLyULXTPoxsiIv0E\nWm4aECeoWzLU+AqGnGBhbANz8tCkDewTZhcUyamUBEMxMSNLR0TwJ/y0f3NW\n0nk7G/6GYkJqnKEtVc6mpCMmLZPag8PBSJyC+W6FkgblaKgVx+PCQ0BXQme+\nQIeXWmMj76A+7iDMtRCO5wGPNGA4B3uuMhthsrh2SsQwMXatFoYerlcyz+mp\nMOFTtSnC2Yf2hGQyJpTs8j5KImNTCAFet0slTio+HL2eywzDsibv8f38jfmo\nDTHz\r\n=SuCS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDugo3PAdaK1Cm8d+PZomGOx/SwS946RHVbjIQnQiJzVAiEAwK0w4dCyOw7gAp6paV2NwGeZjzDuYln0G0681jHIyKU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.6_1537454094992_0.736740649116951"},"_hasShrinkwrap":false},"3.2.0-alpha.bf051f96":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.bf051f96","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.bf051f96","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bf051f96","@crave/farmblocks-hoc-input":"^4.2.0-alpha.bf051f96","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.bf051f96","@crave/farmblocks-theme":"^1.7.0-alpha.bf051f96","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.bf051f96","dist":{"shasum":"143b5e47f2252cd5880e8fc2f12dc92dbd3fb7b2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.bf051f96.tgz","integrity":"sha512-WacOdtcHne5sFV97Ca5K/e2rRoJ6w0eDNCS4zuF/uUoMau/WJXc26HZqT7S7aA9sGjpt2oGS85IpHZZDyUQuMw==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo9MVCRA9TVsSAnZWagAA5UEP/jD94qwapzTHHIe8xtVN\nM2fs9lNIw+Njao38FwMHM3CEbJjE0ouAU2qBwEP+9X+m8MDKqeiA45/bdxlb\nczuUX5ZcnTbPDgxib85RWIgjqz1p+N8Vq7OHwdsivVR4+6eXvKehlgRXFWUk\nTmmLBb6vTJRC4omamEv/koFd6DcfdbSQKhR4lCGYngEfaZuanhhob0TWaChD\np8HPe2SIWWCxsXIfBxwgAtcjgOvvKSHRg++lmQssOFYOZ7aJzrdBNIjVa4P3\nBesvl7TQxlAxyt7dGAp5rPAmpNTzZTPZfqkKAit36reaWQLnaT2wECADTAbb\nI6rV2veQ6LBmTAP0swk50PZZZmbS3AWlfpagh4z2nA/vbvRkABneuML0oG9I\nS4Vvea/h8UMHdW47kfnh14mA+8kW1In0FIaVCKp1Jz7nmOyuvjASznQteXUu\nvS31Rb0MF95hyWBCjmyrJunGojWhaNZrh1myMtB3VoZjTF5b5zVBoL+xK2J7\nZ9BR1wBAhha/awXerIdqPgMIst5iAVmTOBHKbrjKt1aFv0W5LWC93qd6TdwT\n5tMH3xLt28qHDQLgZFAkHK+WMf0e10ARgy4QihQV43GBwV81UqZpyZ0Xpl89\nSNbwoFdHTFGof8Ns3B7icWGUhmPPmC3XaLIqa4QTP7irIeZNbwXK8/2D6iWd\nwvDK\r\n=slMr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB4JYMcxIFTYnFSGbta23OHNDrUjXVHRdl8hC6ZYPrK7AiEAq64Kj3eKPVWd/PzDgL0gtsrs3FROOtw1AYKa7JJO8Bw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.bf051f96_1537463060989_0.5001930549324849"},"_hasShrinkwrap":false},"3.2.0-alpha.be57b048":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.be57b048","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.be57b048","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.be57b048","@crave/farmblocks-hoc-input":"^4.2.0-alpha.be57b048","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.be57b048","@crave/farmblocks-theme":"^1.7.0-alpha.be57b048","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.be57b048","dist":{"shasum":"9f9273f3420634e2e31ab78d929a21d70db5e8c2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.be57b048.tgz","integrity":"sha512-iAxjYud1fuTBsqPGkvPurl2lyEICAGb5hYWfhsnxgspXf7kmOpwo3qwA04+eQCDIgH+iMpVyG1QW1uf0PVslMA==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo/TSCRA9TVsSAnZWagAAsq0P/RIqCuO88rQ8VwZdymJq\n249iP5ZKeMSx1lvOk0nzXKo0dVMhbBT/QCGjTuiH3Xw/f8Kikq7mDDUZT6N3\nrzxM+bGenRwnl2BkVCEXOnbEEt2gkSZ0wtkRTpggWbjsSbcai6MFKE8LGAVj\nlxH/Y5hXkHVAftIW1QDMoLVYbBGTJWySnKbAz4czdwEwMlJcywRKVAgvBVLl\nNommK73Vboi7enKL6OSDRAyA64PbIPJITT5+lBDC25zkshHAeRWrCMbq0IsO\nKzdm/U/lKtZX9zzrgWGExgt7ukg+SR6pEVnfpZ2AbO55+QQaR9YU5yjk3nkK\nZDSqOQEqblMh5Zc9MdQLF1tDNK/Kk6rA2XXZIvL+tvHuQmrnIRhiHi4VBjmK\nQ6d13sdFu3MKNZu4wIRklNcnDZFe+1aCSBmAywg8TUa8J1zOKHMStK8C9ISd\nOniA+pwXzN8f7VrVVxdFGoZFZcxnTXlukRea1QYKaltV9+gxaxEBb6HlNEPn\naIxzc9o0kj+9TraT5CakDLQ95gGW8wEk6JVlalueVDVSHChCD4TRkPTGiXV/\nnWNwytEPBlbUh6YhDJoa8CU1MpKwfkR7yMjIDi6CoknREpjiytkqwGUc0bO3\nZq38FinOqz/NWVTZysuVIgUUPsU8INmzTwChh+sa4xPzC1PVu8FRembS6Pze\n7Pnb\r\n=rsID\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAIeaqUXmdtyIGYgqA8hJstbqPvIzx8/rTeOE6zlmSpGAiEA5DkxjpaZ6vkRT0/45io+IDJZETFaNokYZXbK+Q3rHBs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.be57b048_1537471697323_0.5537218759551186"},"_hasShrinkwrap":false},"3.2.0-alpha.43c065f3":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.43c065f3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.43c065f3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.43c065f3","@crave/farmblocks-hoc-input":"^4.2.0-alpha.43c065f3","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.43c065f3","@crave/farmblocks-theme":"^1.7.0-alpha.43c065f3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.43c065f3","dist":{"shasum":"632ce6b927ec0f440bd460a8fb39d74f7f8360d6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.43c065f3.tgz","integrity":"sha512-C3wAtI6CMFUDJdMAFQA6bU9w0bLHRqssB/Q10nDtMNM6n9LOMarU+9XDPWhnYJ7PrOOCwXpmvaB8MDcRZk6SvQ==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbpJppCRA9TVsSAnZWagAA6LcQAJ0UnpI3Mf49oy/dUAqL\ncpQcHHsWjkrZSEIH3PC3MsIgXQvUI2lkVLSojZgfT7uoeE2MXtUgbvvfbaVe\nxonNLyvhLVS5PKDDkYwiRjeG2jMk/pWAa9HbobIfo5+GqFqEZ+KGokNwOeE+\nrH9gOHG4wdekJpUr7NliHa1VPl3THYUQIxQwZS3V3wwQWufy6vZbAe4t5IPN\nxgKoE5e/Y20FJya75TOCA+OqwIidAGiat+YyKH/+92xDoUUMJ5yj9tLPRbGJ\nNIQy3lQ30/rp2YThMyaC3EEbqIYGeCbNQ+r3eA0RtcAJII68RWmbKbi0WmqS\nIVWfWxbXjxuWMGDI/dRi3WQXUdUqhYTVfgTfi61p4P7CVRwEblG7C0aDh4aI\ny1n4Vkgikv4UH4HV2jiWuKeu88pniTe8IBswjNK00sFBGeNBzDpvhCkWe+d2\nxirFOqTcyjmfmRG3kfqTTiawTcRieqIwfA9uzsMd3paH1MO3Rrm83UST6W6p\n3GGItMBty1/13NV8l6FNxIXGPnZZDupFH3DFGxd/xrFpAJ3AUBuZAWujwfm9\nBUS6P1PGAQ/C4wupTCr/l8Jss//9egC1J4R4PpZequeRCMtA3dK2ENn9OWWP\nJD2rcuU6zxLUW6ZnR4f9nZhK/9qvmwX+i9sgM+Nh6h/7zuMdZG5UAlkK5wx8\nehmk\r\n=dQPH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB+DfPRupoxmdWuMlsMsKYqaB1dFvg++SiPTZa+Ms61jAiEAsgNCnM4UdS5t1+lyU+ilMJ8YSGjmNhFFIQGhVkHFKrw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.43c065f3_1537514088489_0.6053641800279164"},"_hasShrinkwrap":false},"3.2.0-alpha.8f8356ad":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.8f8356ad","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.8f8356ad","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8f8356ad","@crave/farmblocks-hoc-input":"^4.2.0-alpha.8f8356ad","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.8f8356ad","@crave/farmblocks-theme":"^1.7.0-alpha.8f8356ad","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.8f8356ad","dist":{"shasum":"e8371424d8e5a09bc6b04d598ae7afdd79f70409","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.8f8356ad.tgz","integrity":"sha512-vXTfuy3JQk2553kTRRB5ssLMrYp0L5auJgoeVeIsPL8hSUW6CpkbfaoT4fKowP7PxeWbAR9GXD2FYvI32PX7pQ==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbpKWDCRA9TVsSAnZWagAAhJYP/RIvJ8amBCHzvUWIcOOS\nwnWxBBa9VD0Xp9LoruMdFYfd/HhQHij1xttMI3Kg4g1iQJFUJWddWs1Ps3Wn\n5D8+M+JbZc1Tqu2PJaYY4hmJisnZqCnb/GYsUCy7mHmxhE+z+v0ALUOH6Fkq\nUN8b93DqcsP7xf8S42jrDmc5Nv1mlY7K3seH/eaV4qXe2kr10lB0Iis0rmIV\nKfdtQ/FY4sO28VldPmDFt40lgCPmiDAt1/B1zXdoMYe6t3+5jCudp1WDoMDV\n5InPn2uow2dEO+Al9KyrhN8MUwh5JojrRL5+03z8dfb5OiEuK9Mx9aZKWGjn\nEqFbIF8G6ekyAXtPmHpF6391BU+JqzwkaqFubwfjoZK8+0EO1oJBVjp+qgyS\nEkngC13S55p/x7wZPFOvsQqBNCOa2TfmYPcr+f2Ti+Bjeyd9dnEZfVjDJyg+\nQcN2PyK5SGSzQ+ox63VAQFpLhgV+j1bevc/j/58GLkDnl9Ptb6dxO3vDGLxN\n6GX5WKfoGzxyDhuzXL+trc4hX3Bp99ETgGVOI/Z/KZk0pKd/vgPm+TD/9MWU\nM9mSWU3a9sW/1yeqAaXA7hcBvu+9AvjWk19bHc+QFMGXnyyTOV2CriQYXN0M\n/R4hV11DFEXXpd6U0TthnCrGUgIDAhcUGlKxxB8/bukbmOvl4n4EPdgd7od+\naA9U\r\n=vwy8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGjhxpdn5fzEZ8bnDOmWTCLJOXDl9Ni+yeUraRPrE9RKAiEAie3bmfXunZA0wbMFT8qbkwoXKy/wQyYrdeM8kMG0M9c="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.8f8356ad_1537516930453_0.5071883574258285"},"_hasShrinkwrap":false},"3.2.0-alpha.2663735c":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.2663735c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.2663735c","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2663735c","@crave/farmblocks-hoc-input":"^4.2.0-alpha.2663735c","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2663735c","@crave/farmblocks-theme":"^1.7.0-alpha.2663735c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.2663735c","dist":{"shasum":"570ae8b83d65a243dea508e164dfa28c45226404","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.2663735c.tgz","integrity":"sha512-80Rfm8g8yExiQh12qNVf/423U0gd07vjGkIYsyIFkVNw7o2ZB1eiwKL1AxANv6+QRNeHiHMMLk4DctIUy8dX2Q==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbpMsrCRA9TVsSAnZWagAAqKIP/0d8YpEcJZhnlq+0SNUS\n42AGrR5pB87qactd5QYVJt2kUZmJHvhlO/Padmgp63FEu+MZTMwLEdShqBUv\nm8Dzs/8w0+aInn+JHyMiHFBGzWCuX9Sobh1zGhOyon4hEE+Bp1hp0CPdHI+b\n1rRu9FepKJH8XXdTrDD7EsgzenwPDb9E+PuyUem+s/GWuMvvz2MvH/xykb9k\n1dxItTNZK/vlihPML5WeMA0kK3mNEaFlyqUfF8lX1Kgx+JKhoWq3yd7TLx5d\naI6nMrkQ/y2IgQBoFZ8x7BDDYadhAZlpbgDk0Qv0dB7jUn9YCA8/3hgllTEM\nmJZCHtv/+hdjDOza2muY/P3sRL+eFmLDb6S6mp9DvwGDr6R02SX4YQzMdASh\n4iJzI69YTr5IgWP8BC+194Sh6rpvE+gjEkUXcryusMVAsABtKtudtWzH3LfM\no383nqVk+LvqY8SolNNINg0LlMAeMHsW4hOOwAmjipXZqEsrfyPMLhYE6Fk7\nk3ezp78ISBHrtKZ5gp75UjfTpyH4QBiX7MLDwbMipyFjWXp+IfkSkCN8jEkm\n4sO2d060EKFlaapksfSYm2wmz76rRRC8O9jnVk2qYKiYRpTvu0IzHTUWE/Ie\nvlxnd3yB8Ur/D6gkOdNR5r9SZXQ1R8tesn0V2P0kXVErpxA+Mic7PWgLDJou\nt8Ht\r\n=qnoo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyCVhoXnjyblBQ1hloPxpEdQ5+xg3zT9d0cYfyLd2EEgIhAOE8fQpqG4dlEPx3hRe0/42IG4qOYsVRd3RQ4d+dcJJC"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.2663735c_1537526570671_0.47643071125742"},"_hasShrinkwrap":false},"3.2.0-alpha.9cf256bc":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.9cf256bc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.9cf256bc","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9cf256bc","@crave/farmblocks-hoc-input":"^4.2.0-alpha.9cf256bc","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.9cf256bc","@crave/farmblocks-theme":"^1.7.0-alpha.9cf256bc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.9cf256bc","dist":{"shasum":"f03348c8beeb62c26b217aa0e28bd5a247c504a0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.9cf256bc.tgz","integrity":"sha512-jbgIKlVKJM+IOZ1x4SZHcZo2toBNJPoGBZGCGK+oh1PvnByPfrHNQKZJu06x2KTAGsQOxncJ1VNOHxLQM9nFqg==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbpQngCRA9TVsSAnZWagAAoFYP/0W3Z0ws900jI5ueHQAq\nLeOhhUJJ6XEwmJ+uzmsUztgeUhoEjmveCiVsF1IuXWoAm3CBydeZaX0palzb\nN+/fWM94gZXDm4qR1wvLH8neoboD1HDPpK0CmF3vDbGhUfxGy8Ay2Rour5Y1\n+jjUm0L8BZAO7A7ksPLpZZOLO22Zb1kMEFt1gIpcii5TCbuaZfpeicvOl0pb\nJBq1PJaHp45pihRaYz6I+mV5Vjesb+8gIsXMYOEto/FhD01vMi4tGKcaMAKa\n1JFAXZOM6i4V7yK02Y3xDr8EFhrQJTq0dsInyVNLrABMsAJzUFwA7GrtEnl1\nBSHOh2qY0MTxGYZ7nNiYnX01XAATPCXKDrtJIzKQha6bv7xQytrCNuJjxiIW\niGB1swGnOFl8FJTp3zHxUl/UWv8yCwNGXNDSMzRo7z7bUTwQTrOJvo/1ToBK\nwWsznQypvYHCv/OdPY/lJPpS0SQiLkghTEFzHfZuCW1CAp1S5JpTCGnKNvRj\n/nhCbPE0YKpBVNM+G4xNGWLh0d+MjVxq1SG2O0EQFDSh4RRBrdu7WSqscBbY\nzbT8nc497RdXotLsYZMhgXEX/duJdrYi+nzbyG9T39vR9uCmTC4z7zHDzjT6\nre6IbvidnU5Mbz/uIQRCXfsunxsEJxlJNMVJmqCFSKikgupFUnyCgy9FU0kX\n+QIi\r\n=jz4Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICx8xTgDv14FaLuAGNJJxJ00/0C3WckhDeEwEmDkabf9AiEA82JRieHhwB9mcU1llb04zJ1247CwczmEvGb6Xra3PAI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.9cf256bc_1537542623648_0.3615156035405407"},"_hasShrinkwrap":false},"3.2.0-alpha.ac49b8ee":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.ac49b8ee","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.ac49b8ee","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ac49b8ee","@crave/farmblocks-hoc-input":"^4.2.0-alpha.ac49b8ee","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ac49b8ee","@crave/farmblocks-theme":"^1.7.0-alpha.ac49b8ee","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.ac49b8ee","dist":{"shasum":"53603c4aa04be4c539cb73f2d445e32bdfc5d080","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.ac49b8ee.tgz","integrity":"sha512-C3nAkRQknbtJ3DVzJyYyr81DKDQnIy9yxMXah3uKkUCJ1l7EwZJeSMurPXwdxXwVAe3nW1KzyVeKd5Ak/qj4KQ==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbphmhCRA9TVsSAnZWagAAS1cP/3WoC9KoWBDPhpopZj/K\nPK4FKRotV2IpGJinvWFp/7TMNp0Cha42Z6cEikuOPF04GY/GIRM4pgyWW/1E\nW1Vz+x7g9FUrNUnHMLh2iVnFB4pHWIQuiypsNX2wPg6wJTeoFkekOhuhgrOx\nSRceF6UBa8iHSa4Q44uBOA2wIsBUqcEVZfaUBdvnk9F1eJSLswTXBt6VUa+e\neN3F7hEYSt7r5TdF5LQccBvSAx33xj2ABrneKD2NlB6U1nx9RJYiN62+rxLx\n/PhRKht6dmSj+2FLJtkQjL9FFYh1inxLoOehNW2dew9phdujh51m4bp5QZrh\nKKZftEvuextxm9atnl7HoQsU3ZK5pq9XqWPzIFD9PrmiLNMJFeM6aeSiDJkH\nyA06CXierucaqPAcuIsbod53NcKMG3nr1QbHWptIXVOx6D4ETUQ8reLisZnU\niSdJGAQ6HEbWG+hjzwXMN51ni/w6yVRtwAOMXuqWCyS60+d9pak5jWYI6W10\noTnQAzOSTSamV+m8S0Y5K93/s3oxm9jFjSQ7kzIIbHi3k5p2+DAOndUDiIvQ\njw5oIN6uZlzP6zIzsJNBkpbd3jO5ZHuI04VFaV2EKtVKmIKuTXgQ2HtlTXjO\nZ6/zuQYHilEDx+MeEfihTZNdgneRt0UG3VVSQYGCYgFOw+BXMd/5E0+/5Zno\no5Hm\r\n=YiCk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG0ITWhlhtxErJArfkVvdazJdSSNtaTPi1D3IaBzK6HhAiA0oa2puMwn+n5wU9ycinu7jMQuRcdd4kwsz9eXKpYUcA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.ac49b8ee_1537612192216_0.5280922647736443"},"_hasShrinkwrap":false},"3.2.0-alpha.e74f7f42":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.e74f7f42","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.e74f7f42","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e74f7f42","@crave/farmblocks-hoc-input":"^4.2.0-alpha.e74f7f42","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e74f7f42","@crave/farmblocks-theme":"^1.7.0-alpha.e74f7f42","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.e74f7f42","dist":{"shasum":"d908a73da63ef5d872c5ba83c90485bbce7a406c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.e74f7f42.tgz","integrity":"sha512-TDamCIZyyzt1viS2BBJXq1MvKhnoxkf9A8URzAkG6KM/LP1f7L74wEh1UJ/D1X5T3l63fzk+o+rIZ+lMlmKA1w==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbpnmqCRA9TVsSAnZWagAAh9QP/1dZaasK2HzqXkN8fuAX\ngfhiHAdvSVjiyQD6bbDRJBZQcWZHcPPGOSEUbQ+Iog8ZyUeYy0UybqTyIDdC\nzkm6Z4V4NBIlG23hRz9cvlfiHrPlNVUr4K7j2mgmR2pIJ8YzxiY2K+QPbK1R\nptdgxqpNQAASn2EYonpJl3bC82MxTeFkX0S7XcNy8PTF2uKTABYNNZkyOXAv\n1iM9yBVoRLgz65TYuWOQrG1tQfqEl4TjBDUpHePKvEPJMCcudB+Uo7I5oB7Q\nF0eL5nhmwDGSTPfICxPovkql9pVTQFZOANEOD9l8Er9wVHQmKAxun/DOC1nA\nsjzfm50ea6IhLOe7LvNRD2drbAgmQ938dbvfhZa8aAvgyyNR0s3qq0wk7/Ju\n6u8Y4tswZlU/kgLzKtpyvjXW94HuJgN/jhPt8ldFn40Q7Al+aktxQVGzbzsZ\n3aXsiBgCzeXNmrknkCZq0w6aYbXbGHRQ8KiquxybotjaQIQPqn1CWf7Sbj6a\nnZUBqe+Ewe6Waxu4gES3QqzBJCpooYQzg53/Yu+T05jA3OgAr6Hz42PehKHW\n2QBGMnSx6/UK8/ECAz7wXuVp4FvG2pSAqdijv+i+sfhnfuMoLItS0KAczHgm\nM3LpZy3V6XNUb3eR5J4gjY7z9zEx7kfpbvcaaIrJUlTgLr9UuEX7aqPHi2gV\nMQjZ\r\n=NXlw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZ8inTXK3TJNXO0sR3ZKRULX1xVRORZpAIQM8H/JzQPQIgQmaFX2423A86I6CgEEOfRjqGUXEJeY7XVwXa7qvOWPQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.e74f7f42_1537636778117_0.36153172052726457"},"_hasShrinkwrap":false},"3.2.0-alpha.9b4bf866":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.9b4bf866","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.9b4bf866","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9b4bf866","@crave/farmblocks-hoc-input":"^4.2.0-alpha.9b4bf866","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.9b4bf866","@crave/farmblocks-theme":"^1.7.0-alpha.9b4bf866","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.9b4bf866","dist":{"shasum":"942f797750a8b79821cb26a86cb6973f3c7191dd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.9b4bf866.tgz","integrity":"sha512-/UyyxchdVl5naJT19fidzG24Crzi0CQDAZEc/yUKiViSn6HcbgZdKjR5wXxAweWE+TUa8C1t5DMohbZKFr0fjw==","fileCount":12,"unpackedSize":51892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqQ8DCRA9TVsSAnZWagAA2cYP/RgmwX4rYNmttArXwG3Q\n+vk4TzY71SnjiYKqNyGeL7kF2b8G3FCwyaKDFPx0Sad4PjslutjDmXuCc9p8\nWIFnk0Hik4MckLtHk7HHZFmq5iIttnuRb7yYHDA0ZpBaxm1YQbdPgIJpCkWC\nUG4tfxA8O9Tth+H3thqw1w3mlkdPQ/9NeKqmYO1jikblfc8uhxDjpWFhyMbA\n6VGD7EsXKyUu+Ao+XSc83iUcWj3JroK06l5zqM8UDq18nip+VagxtIqvXZtd\ngo7fPp5RzhNfFfL69OtUljhS27IqxH8cas9wm7CKprBcgU5sNJf383ouTL90\nTvIGOIhcIHgI8KRUDOUPp41FOCN1QCZuSCt3f/DeA3X1v6dZ9Eq6Jkq4laLG\npJrT21jJjA/FBrJpNAZ54WHZaocgdJMxs9Gv9EV4rrD6FeKeeXb35fksV+g4\nhBJ47DSchzEX7qJ8i4CoRb+wujrXrws4C36Ltanqes9xOL8nBR9OwvpegQSa\niVyQCOclJ8xhxk4TIUDEV5hdfnfK2glY7yNoG9N087uSEvC9gpQvNDYSp8+l\n7jrwqrU6QU/127rqUWiR1uDK60qLo93OMzL+KybamBUuCtVEqUwuhqxBnugT\nvTCIvslsKu1ZvvHcesnbmy7gBJaDksp1hMghL7nFQXkx3DSNE2kWc0HurYIV\nMLFG\r\n=zdy7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNxZmadmWzm8JGXXzX1O5z7AczFvliFjPrl3K5qdF+ywIhAL6uBrKVk/QMqMPZWs9tpJaQoqSsJaHSYVaScdfr32dy"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.9b4bf866_1537806082915_0.5313252528300683"},"_hasShrinkwrap":false},"3.1.7":{"name":"@crave/farmblocks-input-text","version":"3.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.1","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.11","@crave/farmblocks-hoc-input":"^4.1.4","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.7","dist":{"shasum":"7c8f9c83107b07c2b8fa144cf5f2414d1ef21df1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.7.tgz","integrity":"sha512-Wn9ms81Dd0+bUOsqELs5JD+TlKSLvQWXpPfDw38EKbe+qXif29QCvHVL6E846woMgqB/NAPaPj4j4CbN0Qhqbw==","fileCount":12,"unpackedSize":51759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqR3tCRA9TVsSAnZWagAA5GYP/0CS7D3Y61Zl7O/tzrqj\n8q7JfJIjmgfhskMn+YNwk8GvEUeo6+Svpvc3GgUYc9dkKTv9Vylw2XkyuEN7\nXqowYo/7ZYdL3iI/Fw4JJNaTwRvETX+WgIxU6bm9uk+CzQ45pLmDwG61xFY3\nYX82OoheN3nW6ucSA6bScwJyfj4Xi3/DzlTAOxUUj2L51nyDkhQfO7qSzXWe\ntMk+eHx9+r6+YAuCwR0ACseRo1tYjjq3mOTzadf7DYv7Ud3oo44DZtTzCQ8P\nKo9tfbGOqeHjvPc7JjPbRu73g1QBp0wW4MwgtPukuaKFgQaXm1k9kdXRvNJ+\n7HerLByQoiU7ky98pxrYcRoxNc0GWOo4nTW4fkKqHYhkgfeJOG5vOetSTfK6\nKGdubsJ4RTtjOzXLcklW6M0arQknVWzzciv1VNzBu4TBcwf6DjQ7BPQIyU95\n+HzQgOj4cJ/stKTINVFQlHMzOL5UiQjbZlE8bKjRXT+PBNml7crq54Jk9Ac3\nYnlntyKIoYytgNowN2fGqTrv9mhDyLUZMvwlSoKxBBwnHWZ04XyLzmFqdV/o\nnnuPDwPIUj6V4hEXQEoiTEQ2ksKJJ+tDBUh6ujw4sZkQbTrVzcWpFHgI32O1\n4zQAdEYN1T8jiusd1C1kLCA8Fm/z0x9mpRgTABVPe2aN+qL2sKN8IWDMLM8B\nYl7Z\r\n=HYoF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFCox6Okzq8NLuV1tLDX3MUwJP0WNR2Ccehc46GeCIDcAiAiUPGEKBg6NJI2Yq3WZK7WIlzbAIUzOaNpGv+aG/u3SQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.7_1537809900059_0.9029055751930288"},"_hasShrinkwrap":false},"3.2.0-alpha.e3d6e0ff":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.e3d6e0ff","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.e3d6e0ff","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e3d6e0ff","@crave/farmblocks-hoc-input":"^4.2.0-alpha.e3d6e0ff","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e3d6e0ff","@crave/farmblocks-theme":"^1.7.0-alpha.e3d6e0ff","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.e3d6e0ff","dist":{"shasum":"787306395ecb5f1e4181e8e9e83a669ebb1cda32","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.e3d6e0ff.tgz","integrity":"sha512-hCLsda3xaUIItCu0EnbvcKAWeCRiZFnmCv+SipV8vp33WJ0k8xy/KDatN12RGEsZq19ujLVdV+s1HmoG9hoVcA==","fileCount":12,"unpackedSize":52132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqiu/CRA9TVsSAnZWagAAdlIP/1QrKFqf6lnMYz/o5dNl\n14OOjGyeg3kpc8dLo3hiyE+r+hJUqmU1T0wdaD7Kmhl3dD+lgiu5cg1eNSVE\n4LpRxpp5W/2li9x4KBwoLmbsyanr6i3xcyUmMr3i+LSs5ZzjNiLbyNsS1RwW\n8HWBdSg65VV9J1aQ6T0KO07XmlO73/g4HsHwg+NHWL9fID2H5nT07tWE1NCx\nR8KaXzSil+W61UaMmH8JEI9xOvqCVcRxqTVAS+1tHsvuyghi79X5remaXvb0\nTAvfRzE4r+B/WHWtsMOwHgJDsXufhOZyqo45LysALF/DHoR/xd5Yef+ND+3j\nWbG2Vl+m2gU/hXcD8HejHMQVHBCA9++tZDfUcqtfFt/NEtBdeABme2sOe0Ux\npfKMLD7VKYKuDYcBRvXs2FQeKX36qrrhRiwIb3anvlCCEMNaVE6Xu3DNKTv3\nJBY6SQIuRt+xYCcEm3+iOXGsEc5dUSwloTJNSgXbNjPm/CjlW68tiuN0bWi7\nxmbR3SINYtsZyhDJX//FmLke9Q8KqyXVMYCuRjarQ4rHu5GpTj646SUsm1aK\nbDvSko/XfIAnx4AyZSrhy6r/y5NTDecvPFvBNHX7N5RPWDKPyX9yPSehuV/U\nUMpWLTr5Jjt6hacauvJpGglz7tBiikpHtIRwvtah641wz6NYQiOcyU8FVGyl\nSvOc\r\n=SZrk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDkUM3PqTTedN9mrlofsGk0/UXDeXEAEh/vtLssKAh9JAiAeWfAJi+Ky6SI+R28i7YgLQ49D6qA7NsALXKqJHOPLRg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.e3d6e0ff_1537878974845_0.6362027237360861"},"_hasShrinkwrap":false},"3.2.0-alpha.5e8d38fb":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.5e8d38fb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.5e8d38fb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.5e8d38fb","@crave/farmblocks-hoc-input":"^4.2.0-alpha.5e8d38fb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.5e8d38fb","@crave/farmblocks-theme":"^1.7.0-alpha.5e8d38fb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.5e8d38fb","dist":{"shasum":"eba75e1fa8c21b044b8d8f2f5af68caa4436d6bc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.5e8d38fb.tgz","integrity":"sha512-O6u3t5r+/3sJ6d3xh2CxMAmXGcFUxdccR0Mu5cJK1n/+lQZjVrKtH5Rw+FDnh/Kd85m4JdYtWITi2YYb/6D1Yw==","fileCount":12,"unpackedSize":52132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqjnWCRA9TVsSAnZWagAA0x0P/Rinl72kUM6uwIKz31or\nDqXaax60kMduXRBWj3GWimSltZII+9K+UIFO1P5yo2G0BXFzmvzONL8E6t/p\n03bMweWMk4qkHaf80mF58yA9L5VFXo2Yjn6Ndf4hMNh0+7jc18vRJgUHTU2U\ncXYkqAU4UQm8aFD7ilA/P6OxvMZBQ5CeYU+y2aiuhAESgbu7x0Zw/y4e8M+Z\njrz/U7DWL1Op6sQ+6VgJOm9Idt10bYVJvde54AV6sqg76PlJB72+lSSoNfdO\nn6GttuGfClePdAcW7adhLkQmbdThuy6R49aRSEqmiahJ6ruwAgvJV82mIVjP\nm4yh11i9cGkf5ofI7ajjRT4yfFKkUzPwmEBzNaOCyThkpIgNMQEBT72bMxeg\n0ka/o8+kMreKuZRh41v7Tq1FF7ZErMDVtZHEQsnZ82PBBLsjsl//DkYsenGZ\noscvyC1xUSTnl5X9KKbLc2g/zvYsDv/c0PY3AsFTpJBhF+a6Ir8XesY8ExnO\nIftD0uPY1JhKMU9Duadu5L0PT3QLG9lh5g4BsPkHsEwmDa6Bi6sN2sUIb73q\nOZRj3YE5LlUzWLtEb6gyEHqOubgq4djc+JGiFatvrmf1pq/lF1lcU7IEaoWw\ncdCLJErU0k/pFgg2msGavcMnXbIu1Alg1Qng+5rEH8PYELQbFSZDUCEqySz8\nwl66\r\n=4B1a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH1lFvLFi8n2ZuO/ZG26c5JywV3vokf5m/HjuhSALy4BAiEAqhoZlePOzQGCtIiQV1qYwkqc27oJWHPr/wxJTOi04X4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.5e8d38fb_1537882581629_0.24118266577385072"},"_hasShrinkwrap":false},"3.2.0-alpha.3676586d":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.3676586d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.3676586d","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3676586d","@crave/farmblocks-hoc-input":"^4.2.0-alpha.3676586d","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.3676586d","@crave/farmblocks-theme":"^1.7.0-alpha.3676586d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.3676586d","dist":{"shasum":"ec2a4c6d8c86a044d59c3bc8e9b43aa66e8ef407","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.3676586d.tgz","integrity":"sha512-hv/wlVcuI4OeEDrW7Ab6E0LRKoKwtl2GjcB+M6OMda6B3AziWVWClv5eCVtmscR9081r4Zb1tTvhcQw+rsJLJg==","fileCount":12,"unpackedSize":52132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqj7UCRA9TVsSAnZWagAAWZ0P/RONY3bk1qX/JldWfn9c\nhkKG0mIVQJjtTAt1giNiHe1FHOebdZSyYMKOjsp08mOHXrKK61lGgi2EptKp\nuxwOfwQINOQSEbCeSwBQMIzDiYwR+qOaPbHhqqsB86IxIIhUR1zYqpcI8JFl\n9Dne7e2Iyl9yeUYi8mXTBELnkZx/108dzYcUj/xX696I/jP324J+CEU6btCq\nOes3tC7PdF30uSpYNjDXuV0MdCnA64gpMxbgrJbEqIotUeEZglHDD8gB91cS\nslAx0AqQIfz4/b1ek7qTa90k67lueCzdyZ/SUOw/irzjWqaYX1nPi7rOMbsm\nFZBdcR3h9K+tfFQllz7KVFH8hJ3k8ypi3TQi5cJrAwSxllbuoXwxjngFZApt\nHOPX9pR79itvq66YjddfhZUxrtpDfvEPpy2gyiaYqkl/wZUSMW4Pdv9/y1yy\n10GhOIsLg2FMayADQPFbifMoQuqS9JF1EQr1QF+gbXwehgBJJHdkIUWYHj/c\nk4uEYHVvwZIbW4ot4UU1zwbXtp7mjT+XYj/qY1ExRPjO0ptvXgYvjO7mNWOH\ncdGngRZodJNVYA/i3JbkcVofcwwIHl9QX2IWrQFFhb7lzmCcl2gqQ68XowMv\n2ttGFOysymfEHUok1/wZI3mKAenn/8nzCPNRHv2Yz9zAqdIzsakI/L6CkX7Y\nhm6W\r\n=Ftyt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEfa4tfrnTn8Ut9qm5bjNa2UCmERJWXZsPA5C3DhI4iSAiEAwhpBcMHzy66S/5wuWJQGzUmHTwe2UjP5BBCV7f4wFJ8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.3676586d_1537883860179_0.5047180198996499"},"_hasShrinkwrap":false},"3.2.0-alpha.797c8246":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.797c8246","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.797c8246","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.797c8246","@crave/farmblocks-hoc-input":"^4.2.0-alpha.797c8246","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.797c8246","@crave/farmblocks-theme":"^1.7.0-alpha.797c8246","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.797c8246","dist":{"shasum":"554bbf818e42238a9b33de9d60e0fb0eeb5359d9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.797c8246.tgz","integrity":"sha512-Ej2FQZAnRgqTDuTlW91PLMJ3L2FV66D2Ic3IbXq7FJz8i98EhzPYjCzkwKuwBgkOMPV8grTJwdQMl58+1LY01A==","fileCount":12,"unpackedSize":52132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqn7XCRA9TVsSAnZWagAAfNkP/2V5sruNW09c5QM8FKDo\n9TsA5f2iry3zyCAFnmUVbymteOBD2AA/hQcklpuyvteVjv+UfPP8mRNVfE4w\nBE4N65wW6dY8evrsyR2QdZPH4DQ5Fl5WRiKINof1K0BnMcAdSel6R6Kg3mmr\n4xU9CAEI0Kf0Vk6yBeEXuI1yqQ5R9WXbg3lbZO4hTOHGuFZ/VvtkYf//GekO\nsoJccrJg3n7KaOYXxFHROwYJzBfsue0/3J42xCcDNjz5q8XA1VFtWYb+STd9\nP8VDnV+dk6/rVlgN1ARW0EKFq+RXAE52ptiAfoo90LQYC57zV+kuffIe/DuD\nlkTfkQ4KybVipGZdLRESDEO1XdHTsOnq35rvTovLJPZbmawEuv8tlkwtBXmM\nOwetI0/RLWs/QunSKjavDHRrcfKcb/SaDzUdtoDgOhea/VloYso/rL70thH3\nzPoz5MFYvVre6DNTMZvksxwb010FSZEHb1ybHYlFscUWP11qoYMCiQBW4ZP6\nDtfjfGxxdSDNpdJWFdq+LuUlGn43OGoB4sYjsE++/ziO3WBIKl8PyfgNvFFp\nWeSHF9dpJPKzBquFz9lA74eae4fBiBwo8hw7ITWugkk4LqqqXJbEEweywwkr\ng1FzO4DbL9ZlhzjljKcuPIjYQ/0WUpPRcmtdhVNo0ioRy3G8Z19EaREQNKI2\ng8tZ\r\n=weer\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCHwwvO0MQ8Ig19gK6jXZuojKPeM3ANGkS35oL748AhxwCIDijnDRgT1AV5BzQMAv1HWPBJIE5IvnMpYqjLgQH6ynL"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.797c8246_1537900247257_0.9794258052823241"},"_hasShrinkwrap":false},"3.1.8":{"name":"@crave/farmblocks-input-text","version":"3.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.2","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.12","@crave/farmblocks-hoc-input":"^4.1.5","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.8","dist":{"shasum":"11bfed4bcd90d8a138da1c69722d5129b4f75689","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.8.tgz","integrity":"sha512-VaiGRIcIRWZDuleB9CzKftgfNWxKvdmxVEdFYPMmfnuHaBlPQrCAi9zleIPOExF4tZEEk9Zv7TPlgyiD2uHDzg==","fileCount":12,"unpackedSize":51999,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqoEbCRA9TVsSAnZWagAAqlYP/A1sGEOiV6g7tfEHQCmp\nVY13CvmGhn6xlLuiMqek5CRk61Ptseo5Xob3KK1VZLbp2fPP+gw6OgwArZys\nJq6MDuZfHf91ry3mJsvTsxHf0rw2Rx5UwwMT4T82VVwrsUgsi012TSLF9m/V\nJl3HbJO0rTIRkfcU8SWZ4hJ+o/vHnymokzTZK2FVA5wkHX/Dy0qkyXONLkQG\ndBYmjWCOY+2N2F78GsEJET6mGjmnH36RMT0JgwN4B2vG33/UqNqlKHJnvgIM\nVtOf98aXKStwU9C8KOnYzrbcET7b5Dhjj1DkGYCdF6Yj+qAv2WAJ1vmXELj9\n8pS8eomD2t6IAwUr1fCGq8l4Cz7RTWJ+mQKhQf4anbB9iqvNSvWtQYgH7Upq\nQr7yDQc7gDkd4ctLKNUJ+C48wUep+xjzsM+x77deuQVsSpWvGjaXahTvniNK\nslyZbEPTd1x0Wf+njbGW82Xb9P7WKZ4tj0OuJ2LCCDnOPJjwOZKlxjdVxBSN\nMbczF07aCrjEBSKHjCzQeF6bkKlaE0qeVo0ALLxtBVSXMh51GWT/jNvSX+kL\nCqgTOvTeDv0IroaM+57rt80WRzAsnx0MRpxx1Z6sB5DV2dvdM5powXLnaC2X\nM2HxI7cmPghp7U7oE+/Y+2ksOe23fDaZG2nWs+FAl0WdJlL7apGMJ9Nr1H7U\nyc0d\r\n=MzGW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA8zRnRBkOMkuxJbzXp1Vme8Q6DVQ/AVVcUnielzhOjEAiAytkkl4KEp/LNSCkANif4xe1FnQJfX5kxYGvO2zST0iA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.8_1537900827142_0.5394398499428652"},"_hasShrinkwrap":false},"3.2.0-alpha.fc5d3caa":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.fc5d3caa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.fc5d3caa","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fc5d3caa","@crave/farmblocks-hoc-input":"^4.2.0-alpha.fc5d3caa","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.fc5d3caa","@crave/farmblocks-theme":"^1.7.0-alpha.fc5d3caa","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.fc5d3caa","dist":{"shasum":"096c102c99af41ad5a95e7c4e6b79ae93d8a03fe","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.fc5d3caa.tgz","integrity":"sha512-wIhAhrMkT+DXrVEcdwCeskbR1UAdqJbeCrgOYVBUKc/TcgCRf/h9YBrQhwHgsFb5wy9cR/GhzhvYBPLl8aNd1g==","fileCount":12,"unpackedSize":52372,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqqmeCRA9TVsSAnZWagAANncQAKLngrCJooKVCAqQc6Lq\nmAvbxhqYThTAtiRfPiJT6BOMiXg/8e+7re3R7v6YLHbBVBq186OhOFYs9ADR\nxluJv+g48GlWw5dG+CPqrL9bxXnk6eivaOM8K77xGf0Ic+BHeWzJkOETfXWp\nNQBmhf0x8VhbSm1DSB0Ta2A4vWHMfPfZXiaGkZWeYT6QRELQcXeVe2aBXMut\nXRWcMMODyXyKkCr4w+zD4j8eUar2kLvzrV5k8CZ7mD+J3OeBR7daBrCVjCbn\ndxSNrX5TVjT1P6xVV/NcI0BXAbYjAcsb5eT1liPAxe6GyFzyO1pV1i8wwEJt\ngp4cG0frkhb4fS6UdpyRFGGX9SE5c2Sb3kpaKecxhOGSKHOKGzZSzSKg5Qcb\nNCZTv8/SbBD2Ju7sHWARxHr+gqmovUlXa2kWx6Kt0jhH30cqjSSPGOQNgEhN\nJ82nh5wzUICkSonYA0zbei2/4zQiCxAq2Ok0ienyKNSYcXwRdNJsdBm15Awm\n1Xx+F3ZFt+q1/NcTJuZJbxdPbw1vwYkNNUCnI35jMO9c8VgjTWwXsf+1yJgC\nhk/8IEyK+yPEOVczJXMqroBa/WKrRhe5WOsWTWZ2GVC9zopgji+Q4XmBQ2Gk\nJxglIIl8jRuCq+Qo1B28VPKbD2igK6BdJZ9BECJytu2KPzg27v6EQKDD/zaq\nwHwq\r\n=vsIo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEoGGTF2/i5ckGRvaMBrRFeM1OF31yxY4aUBoUE9dLKdAiAmUG83NtNLWaK53Liw5qUnFvZCXqUYrfs4RDH4hSrBTg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.fc5d3caa_1537911197309_0.8275564749740791"},"_hasShrinkwrap":false},"3.2.0-alpha.c5ec2d27":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.c5ec2d27","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.c5ec2d27","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c5ec2d27","@crave/farmblocks-hoc-input":"^4.2.0-alpha.c5ec2d27","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c5ec2d27","@crave/farmblocks-theme":"^1.7.0-alpha.c5ec2d27","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.c5ec2d27","dist":{"shasum":"3c09458da19c2e8cfc11caec54c23de92a9944f6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.c5ec2d27.tgz","integrity":"sha512-prRNRWdr86LywaAICimA9Jv813+5D2Vw0FTyXSDi7APZIrDehsRa4ObsHoeWGUwwyDAPLW/3kRdNZWknqra9cQ==","fileCount":12,"unpackedSize":52372,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbq6VXCRA9TVsSAnZWagAAFGEP/ir1rJApr2AqAcG21+c8\nQts6PjGPoSdapSWPHSL+J8LXQczgSXBPKj3yE6r8tUeyCbW5JzmaXarpVfLm\nMBdMT59zhHoeuVbHZXsNzReFtVfeC7C5sOU3o+Gb5ENUno/IFmGFOLONy0hX\n223+ufABDqDBRc8sI1yjLoqulSgkxvaewinftQKKl20BzLXt/+1qPBe936H6\ngkGNbL1Dyu1K7XHv/XGrCJtI5NgAMOziKZAg48Sv1aHY6jqHnRcCCFt2mo1D\nL/GWtpPb6xe0s0ZhphCNGtfM1VR4VODRN+C/mOJ613ZA95avzPpB+Yj6mT4I\nHS615bponwOyLnK4nZtFPC3KPduOHwknc+PgHQd2OzbINHOHhVZl/ixPj+sb\nt4zcgiiJACn4ITKF7AENgTAlY7cquCe6f3fNE/Nng3ahv0/Dfz+nhXVg14QA\nkZWOVcYRC9CL1uGiFhuZFZ3tq/ZTgmay6V9yg+VTMjC3K6BKhgFjHKboCa9H\nzXElMT6aGETd2DmgYbpWR1mCB7eSJ4eOm2vVLEO8hZ3cmNJey/OzX9FAvev9\nrPq7JwO9NDvABuqBgtMoabE2iNS8hliTxG9x+miqc1HUEu2nVoQ0CJTqBssW\nyV3IdfBxNlX0hvQx09+QgpwNziAJGWnvVhhUeyLCjavM9KRYhRT/Ge0K8g4C\nGMAb\r\n=dJQj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGtkHKliLrhOROjauIa+Dq4gIJhek548sSCH5w7Wc4G4AiBADEbWZiQA8Q0WN4vA9FbhADa2OpHp7QRzEyf/c9W7sg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.c5ec2d27_1537975638742_0.4719590236013713"},"_hasShrinkwrap":false},"3.1.9":{"name":"@crave/farmblocks-input-text","version":"3.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.3","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.12","@crave/farmblocks-hoc-input":"^4.1.5","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.9","dist":{"shasum":"a6736432b094ed16672e88c63de5ae636861fdd8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.9.tgz","integrity":"sha512-LP3Q6HtEQhKLGjPpQfVMmv9uwMDr5UXYwD2leUDKO8bjVa629oq0Hpcrn2UijXrGIlqzcbTFksCDt2CztvNOFg==","fileCount":12,"unpackedSize":52239,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbq9oTCRA9TVsSAnZWagAA/ggP/2OITREpXp1VYDjfbkRy\nek6rfvp0X1jgkmpOFe+wcIDwxNRKVVZ9MhgQOwnO5TxvOYVDiear7H5kkCK8\ndSQe4xxC1e4xv9bQ23g3ozs0YdYZcT/HSuez6MSFgOSavGfgJ4wjgQ/kW5rj\ngeKK9lczJYCW0sHM6dt3ZvyO+QLmka4xGMFdHriiz9xOL8vbPwFLRH9Z+qqr\nyh5uzugqtyHb75Kd56YXd/sWwDRY+9jC/nnJv1NcSUGFIo61dFS3ZzpUDsgs\n9bp6au6vGbaRE7fnNbH4vod4MgZe3OA8VRVR+iXU9nTZTKPHaBKXUvW0SJN4\nbz4sGeoGlZpi8v5m/RMa8AK5ralkMqovYI10NMmJgRLuy00Kh7yXGwLVdMCn\noOC1+r0PKKHtRrtsTsWckBth1F7I8y1MDI7UPfmakk5+rOnXqaqOLFb9OSFV\niPgMAiUVlwxDKo2r6jaRyvxM9egnxlXWelpiNMJNJJBhNsvMnmCiQMGTvAlK\nUh+1rzHUw3iuBTqfUo9nWT8quyX5F0umSupokMfP/Zi/OqFCxZRnVNOoR8o0\nRBkuA3lQXKH5aAj73tm/9i2y3oLDEf6fqAtDCTtt0y+/Ov3Q0cjIXdoN6jwX\nWrkE8rueFB1eJ9sV6sh8viXDSR+NVMd4aY0G/o+BAH0eLlhrtxMkOgZCcu71\nhnP0\r\n=BlHP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE1K4ke3s8+4ttpOVBc5NbHW5Nc/c06r8dZnezxG4S83AiEA+if9QE8vPW3f/LIuNm5x8hHm6ZaGP5j4wqbqmh6x+7E="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.9_1537989138510_0.34122751768728565"},"_hasShrinkwrap":false},"3.2.0-alpha.254e010a":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.254e010a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.254e010a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.254e010a","@crave/farmblocks-hoc-input":"^4.2.0-alpha.254e010a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.254e010a","@crave/farmblocks-theme":"^1.7.0-alpha.254e010a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.254e010a","dist":{"shasum":"ef7d1cda0e55b52e5e538185be1fffa739b9cbc5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.254e010a.tgz","integrity":"sha512-MO2xPkBB1WNtR4Kb+7QbNRk7i6MEpNXIIfL+p5F/S8KPWBBq3eWH6P7EqnuYlrvtTRA8inOanUVKtQ/ksgdebQ==","fileCount":12,"unpackedSize":52612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrOEYCRA9TVsSAnZWagAARGAP/iWNqWS0o/I7qHhmYPvd\nU/JN2CJtk6GYeQuup8YxSlehkKZWGTW0szgXDNjeXnpXujWcjp2eJP9MjYne\npvLiROi09JfXnu366UAuaqlRUzRvYNmeRGWIHuyB2LuYIyg/Jy0GF8GqA4a1\nTo7VIAkr9iXC6lpaL1K8ga9p7UvbBSGAUm7FxzvWmF77WDnbn2Rg55onW7eZ\nF6SeNwqmrfbZBne8EMxFly0H23+WfNTCc+Uc1KNQGs+3GoO0VS6eCJeTdZqf\nq3weFNlS2VK9s1pi3ACIhE5lBAepSWvs5ePjZmXN/bwaD8i63B212Sr6lhqX\nvSItgK0xepf5x3JTQj4cqkigFkRa3BZSp31DonhqMpxpm+C2pI27xtIIS0X6\nbD574AeyQ18xkI6NEFdQB8Z51c2yz72Jn1bbpV2uI9m+cWhIA9vM8QQwVUwE\nBaUI0ZSwhEi/zGoMqUTx2+nFTlW/xd9K/FGP5qumqhBuMInmkkXkfNlqgamm\njLnY2VMKDtONFLJEtR8nU6aXw7kgHdQVkBnSFK/sqa6GLHrApDC/WOtSv7ww\nBBopW3ouDxonBnvxfAYQSpkHx757hUnjD3o1DgJvVSXjAskOSXLR38o9ijDQ\njTwEnKwFhimT9Z0UXRDa07iJVHO7cehNPRIOnvqFyLPR8n5EB4+ZrjWbtIYe\nOFOC\r\n=aK+F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFoyloIh71M5g2n80drbzJy7S849BfXqhOiCLl2JOQpHAiEAjH1TRevDALfEZ2RooDa55ogQYHEsRhneYMm4Z6uvYN0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.254e010a_1538056471450_0.4971086081052756"},"_hasShrinkwrap":false},"3.2.0-alpha.1bbf0c65":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.1bbf0c65","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.1bbf0c65","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1bbf0c65","@crave/farmblocks-hoc-input":"^4.2.0-alpha.1bbf0c65","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.1bbf0c65","@crave/farmblocks-theme":"^1.7.0-alpha.1bbf0c65","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.1bbf0c65","dist":{"shasum":"42aab97c936ed8b457e7901a99d0b5cd9a6d8213","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.1bbf0c65.tgz","integrity":"sha512-wJ02w6N+I5s2Fqt5xOe4AMk1tuHLhajMgwObvZjd7Lu+HvhXsUDSWOcZV6E2p0tOLdq3TdoqxokPOCM8uOmn9w==","fileCount":12,"unpackedSize":52612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrOy8CRA9TVsSAnZWagAAGQcP/i8NZ1fRV2dVm3/EXwVV\nMcW0dMcCx+IvZWMGeIiGcx/rkRCfVazvEV9Ymt/3Ri+rsIR5xNEb0BdcINXg\nQ+EXp5uzz2kFuiv4dES8nvs9cv92HYxr2SofNAz5X4bY0foyIhYWgaYwYjmC\nBgSGgd4UNtcR2yI4SU+Y8i7ejCpn+9DLt7QwSHRTP7/ZF2xOCOoQv8xuDnzO\nrfdMllZ9+KUHyBZJ1G+8GSdoUHc5lli6itGDeXclW0uxAg6vMYuOEUVwaPQ0\n/+9h5vZ+kRX38qYNy7EOzqIPuts5r9+tZaOyp29j12UksoWktBD7JNanMjR+\ne+tRbu2r/cop5r0jxgBfw0SXrlNJkjZ6qLg7SkQ8piXrRzS0pgEUCBQZrSr+\nRi57hZyrMyyP1KJHR7SSOmrvwY+gN6hO9iZTz4TdJ+jJvCOwkRusC3ZFfy8d\nL5oooILjZfthSmL69Da1lQJ2Bcs13yYF+Nsg1//VIXjoRPbWaNiBQ0dUWc6n\nf60OflYgg2PftAM+umOPbhegHEdKRu0oPw/KqZI26tJGv7tPfgDVWligADMF\nud8pKSFoYVQfDXyzAxpED4Ts3DR+UvBf9OCPo5YPIsZPC3LL1T60Ji1vHDlc\nbgGTt5Jf6iggHV8AfyDtwlWzCoR3XhvYYvksus54ceUgwNk/xlFg0uiMVxhg\nR5zG\r\n=3T+p\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEhr9M/Kfkgok6Vx3DBOUX1HqjMFJfQjgX1XonS0RhHrAiAn5HINDRFcbSG65meSJiHrDlZpiOOTb4oQuUOp0CdDTA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.1bbf0c65_1538059452121_0.03083386168208868"},"_hasShrinkwrap":false},"3.2.0-alpha.fd8dfdd0":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.fd8dfdd0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.fd8dfdd0","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fd8dfdd0","@crave/farmblocks-hoc-input":"^4.2.0-alpha.fd8dfdd0","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.fd8dfdd0","@crave/farmblocks-theme":"^1.7.0-alpha.fd8dfdd0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.fd8dfdd0","dist":{"shasum":"b31ab0fe678a31e6640a1f20709c8b07d0bc87c5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.fd8dfdd0.tgz","integrity":"sha512-mxyCRyTsOEX10X1dkel6jryW2cFqDxo+WPA6Oq6ZXdLZCyxgjXkOwAXnhevASSiNUirYkvpl/KbUu+pOzDXRQA==","fileCount":12,"unpackedSize":52612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrP54CRA9TVsSAnZWagAAqp4P/1dziZy9j9T0/1HRg2vt\nssXqDEnoqyrNWlbEJ7E5xV9lU1TFpYJNefvgWkafW4yEC8uTNTnMXyRlUIAt\nWlvanBiFkQHxKqGdKxmC9lHk35mx1FAdzO6UJpoB+KCeYDDCy9cFMqBt2A6k\nbsgW3QL2Val4WzcvKyxvOnRdwfeBVIRI4eMqsq6SnFfZd89EehbMdm5Ie9Jj\n4Jk4SNFnC6iZpB3cxDe0v9Xbu1pB5YhLHYSwBjpIPhbviI9Zslr0ScHIZ9N7\nGoJ8aSaRP11twp+sEBhfhP02Pj2HR7zUPyDRENxvc2s2+X2U4433ZPHt7VAu\nXYBLGkVdLLt20ZJ13DXACKR2wleQnAjaFFBrYtrTC/DFdrMl45wlteYIOxEg\nPkQeG1PV2NbAdcaa/Z7kM26Air9YmFv4+/Ecl/hsXu6MC5GOSsn7fO4W9As1\nI1fmmY/vKVRxhPAitPfzXNPh0kaqUCY3jHQ6OG891DY5cvYcq+vvMm3ZhBrv\nOpcnTjquYZPWxk0Tq3MUQOaMCiMAlvkgW/Vk1NaIOke3+9MOT56kyru48NJH\n/oGhxqtHN7Kql8lZj3juy4stJgTlZx/oCk1auLyrOWtoc9MD+8tCn1ZdexUz\n0LlqSvJyD9AfRmbrmcvqf2tLz8U/QmkfckeOkjLMbhyJOvM2U9Ff+WoWoFKd\nVQfe\r\n=eu0Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC494BWnwWeIiF0LDKVXD1Vj+u6XRxpSWs8eIDblMMvugIgGcG7CRjyh1OMadiT+78Y6uioKeifLBmT4RjbAi0z2zc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.fd8dfdd0_1538063991629_0.5132814592779305"},"_hasShrinkwrap":false},"3.2.0-alpha.6d167141":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.6d167141","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.6d167141","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6d167141","@crave/farmblocks-hoc-input":"^4.2.0-alpha.6d167141","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6d167141","@crave/farmblocks-theme":"^1.7.0-alpha.6d167141","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.6d167141","dist":{"shasum":"ffad610983f398f78f1c0c667ded8a8612ba3e9d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.6d167141.tgz","integrity":"sha512-PjlJ8XKx3pePEEaWt6e+OrcImYk/gdozMuFGnPwA5+CK5WXkiaOVzXqtXC4TX6N/m5Yy37GnhO5JqV70IBZBxw==","fileCount":12,"unpackedSize":52612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrRaTCRA9TVsSAnZWagAAPlQP/3YzOhEHL+2ZwSvnErGa\nQDNjjD9HalvXOmFihmNeabnbeh/QPjFa7b2Udl1x1sVbERaEJk63PjV8UqUK\n4RlvIGZyxcbEdjjyVuuXTvFLkzBke41sssAdYnXG5tWoiUgMCbp0qpvp75k5\nhtpBWbLWVDjjed2XBhVaEtoNvBJ8num/ovY3LG8ZSAPQj1nV9rY11MwNIkk9\ndGOgLvmYDoxvSOiZIzPHe4Bg7H7cL+Jaeu5HKYNNf1oYOi8IiqgQ4BTCcPNN\nMhd40c1kI2/fj4LoFveXcoyicMJJYMOtbhZM6naRcnMFBlOT2SlB0N/8sQ61\n/mzXENtIZO33qMr6chQTFL5XsUcvpaKqUKSR+CW7XjuRLtuM3se4G//NoG6c\nTL7F/IEvS1VvhRMbcVMgcgj0LRbICvAF5OxoMOW0OXzBsUZrOTfKHKhQTyTL\n27BFt9raCmxwRiaxXi9f/3h0GB/vA8H3xadXzc4Qydqiyptq/xAZ/Ut27NdU\nUvV1Fbx37E9dfdPL3/65wiaJS6uV7TopSxzK7t26xkXVt15FE60gY1591dHn\ndvCdvyzq+nng/eykg/0pJj0U7O1xSTtZJbiKHom8+S5svrCguj5ltRBYJKff\nmlDrmGn3zeis/XS05rPstwSVllbgcTv28k6tT52EnIx82Xt1xts5zktkEKwb\nPuLY\r\n=8M7f\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB1JZGn5JvHAmyJ+Mrq2fdBtZywA7etJtY9dqeLH6TjRAiBl6uuREo8neGGEBICGRR2DHTSHcK3lI/Ic7RQ9uVHXVQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.6d167141_1538070162710_0.9398241355552042"},"_hasShrinkwrap":false},"3.2.0-alpha.6a6c41a6":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.6a6c41a6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.6a6c41a6","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6a6c41a6","@crave/farmblocks-hoc-input":"^4.2.0-alpha.6a6c41a6","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6a6c41a6","@crave/farmblocks-theme":"^1.7.0-alpha.6a6c41a6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.6a6c41a6","dist":{"shasum":"9c64f53b07225b2119ae6a93adc8c0472ce05d26","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.6a6c41a6.tgz","integrity":"sha512-4B6E7JojWaYK/T/Qvv24OYFpa6LtKmuP9VpIfTu8kviAbWMWLjJ3H74Epi1unfxPL3jatB/5/EHNAYwxgmAxQA==","fileCount":12,"unpackedSize":52612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrTXcCRA9TVsSAnZWagAAAGAP/A1wbUMx2y7T7YM5UKes\nitDvrgrZUPZJi7LZed4QG73e2M3NacAQ/ll/wHYRaj8g/l4u/qb3cMM1qTcU\nEATOk6yKXao7sCdjEKLI6WHgOA0JnkNOhmY9A1o2QXz/LsAy96M1Tryn0ng2\n7gUe42DXiOV/6xW1ULue/noQOS0uH9T7V4FIEIanOd9Ws3jgdnMjn1KQhdkM\nSW1nFUDCUdRQUxyJewRqQofDxxZ8vdNJRFYbD4MJ5A3Y1Y6BaLlO5obDQsJK\n4AM37PrVlYih7SwAsCk9b73cQ+7aUPR4vdABCim5pG3QICPkFDjhRISCTOdU\nVttHJD5PqqXOfMMVDcw1AgQ4n3o3dUCsL3Z/9r6ZJv/p9rnf0n0EDd1CfI6L\nw2zUxbrNoiOs43F1HuTzRRcrPofsJn0cqmhenRVNd2iJ/xORi+POMM9MSp1f\nuKnvqk56pwmfN2EuNmUS66wtzj70rQQcAeurgC21dv9X8ovXVgKcT2dJE2hv\nBs+IIctL+tSndrOLRMlwFtjSnDG6j9/yVEEcX9PyDQy7CTA6ZVFIOVP1RqbZ\nKk0DhxyhM2nxftxOx1pxXBc+oDgktizHA4KFGP+bsCykWLuPrAUDRg13sIK/\niNQMujrU7pr/szSNO6Wzxpb7VDPMgyT3bWRfIW0W5RfR4wOLUS7erNlQiTfS\nD/yO\r\n=KqjD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnIV4bJtWGYUtCy8A0QVAqfVxQ89uafaq7rnUV/FAI4wIhAJI+4RgkuRyRrwJnAAfXqBIWGJyhxBuZrbG7vz7q0dJ/"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.6a6c41a6_1538078172084_0.084683766061036"},"_hasShrinkwrap":false},"3.2.0-alpha.7ece2af5":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.7ece2af5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.7ece2af5","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7ece2af5","@crave/farmblocks-hoc-input":"^4.2.0-alpha.7ece2af5","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.7ece2af5","@crave/farmblocks-theme":"^1.7.0-alpha.7ece2af5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.7ece2af5","dist":{"shasum":"addba07b3075110711b77fcc8a39434f6d928322","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.7ece2af5.tgz","integrity":"sha512-45q+jQVeT1gHu49e+ikvG9uK5yfnwJJkOSlgHU584d5NculnoLwTLKGT8c9xi22Sa5LLEyQB6xauk7IIWgTrlg==","fileCount":12,"unpackedSize":52612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrTuRCRA9TVsSAnZWagAAQOYP/ibcnRuAagDa0Ud8wfBy\n01FxtX/UlkwiQ9qDJHhtdFoyMpGM+pdeot4Vu8UiPxl8/gwm/XGkxWNfMfz0\nmQrstil9/mRHpkT9DWNFs9ocXEbWOtc6M6BZHOwqWbzBF3VnVb4orBRi3Pqf\nzNs5SiZj2pZ0pQGYgGanuvuCcwmkDJkJnkuXSU9BjK2UxxqO16PBydAQUAw5\noFhNbkeEDTQN4mYCrmViRL9Px+1+E4JmElvhG2g/Swecl3AH4cjekkHxF+e0\n4iUzDCI58QYcqEJmGxRuRA6GJeK73RNyjCH5+GsE9JCK1WJKNximy1CGSkNs\nQv6Xce8hrrAUGKyAkIb2EqmdkNT3Y9ItFNeZrMy8E+vJ3W7HCpr3OO/vy01P\ngry2mEeVm89swLLjPf/AW3vvoIcALjnIWXauiF7Lidz8rJtR2ZbamZcCv1WB\nrykPVK0doCAzjEFjIRkFfHVqxZ4g3Zexq+oAjMMKOQD2VJrzDuZDJnhCDAAy\n24bfJltqVFGmnFZHBteuQ4Q64QsBrpR3+vHCX26qaFhMKu6ggQ9+I6LzLXf1\nrairraiJUlZhZd2oPDui9JafdY3YjhsTOGg+C58o1VUx4tzUelvifLK0NWu5\nvn0zIEfcC+k4XbSorBVIlNnYDTDxx1sUpj4U/D9RcTyFPmcawwr/QKxfoC35\n0MHu\r\n=QeB2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfwiqfbobwiZF+9VYxqcbBBW1l12ngtNO8uvtIJGZrUgIhALdkJGk2ULzDeKh/oqOAYKvW7OdQhP7D256NlIs7k7JW"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.7ece2af5_1538079632983_0.021657310509298533"},"_hasShrinkwrap":false},"3.1.10":{"name":"@crave/farmblocks-input-text","version":"3.1.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.3","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.12","@crave/farmblocks-hoc-input":"^4.1.6","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.10","dist":{"shasum":"af4498bbf016f26866a5cce4b0d1f5e7f8391487","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.10.tgz","integrity":"sha512-xsQzgb4r4xcig6PB/RUWVYPknqLXeTC1iBr9qmYLfwSNYTT6xhSYWI3snervm3oW9XcwgHT07dLw7jAb01cG+w==","fileCount":12,"unpackedSize":52483,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrUK9CRA9TVsSAnZWagAAsqkP/2arKCqjXQjnyD7vsf6g\nR4idQBtsU8PvSRDaJDqkqq+O4dHkMbrJkSv5WgbmTXecjoRMSjIDB8jEV0WR\nvHMRdmkoQmwiZqDpK5EqqfasAqy9OcmjoSaqCX+UmMsN09UU5HjIynMoIl4b\njk7q5sLRaJdCYQnCtI6MbvFnB+RJQahb19Jus9Ydr05X7gHBO4q2tZV5SYTz\noXZTwPaxph4LKMEs+MYYYnu+rnYP1h6lDikLyG9addqknIjm5dQL5lkyBmgM\naMkVChC8dO/+ACYKEMDWxoQN1y56HMClaEOiQVJljTY1A5nbQ4DbWOivk4fZ\nJKSXy+Hb5NH1R+lsEk6V4dYyO4o+ydcJAO+P7NrU2N+tn9N5DFV5AQVRc8mJ\nUAPEqFRIeFS7Foc+SZVkNI1n6OoceYgdKEW2VAuwSGHk41Lrzy+jPHJYx5pc\npt0zZ2Adh6LkKXhc4WaA58viCHZW15SncEJekT9EtGzEbeYh7Qu6GX4Hrreb\nqita/Gm7LkWhDb1bG2wn6x2pKNYKU60Tva25PA7MlewvJErTSKzFEyjy24WG\njH81g9ksSnnblz9pNu3OhGmYutV8y3LtCRpyHRKy0+XfOZ5oVufQj/sSODdH\nJsxqo2yrUTWvjmP4qk+Hw9zzu5speAmJMz+m25Z7qw5RRaoxac/hVg6JmJon\nQzh9\r\n=pMwU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCeJ9ET0F9TWmqteLDaNjcV8QezMv3r+P7zfaJ6qmIolgIgZrgqXZaJhV46DbF0QPer/H5/b9U0bXOK/AnJXn/zv+I="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.10_1538081468909_0.44695512877925747"},"_hasShrinkwrap":false},"3.2.0-alpha.2fce455b":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.2fce455b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.2fce455b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2fce455b","@crave/farmblocks-hoc-input":"^4.2.0-alpha.2fce455b","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2fce455b","@crave/farmblocks-theme":"^1.7.0-alpha.2fce455b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.2fce455b","dist":{"shasum":"818318df83fa9544d69088dcc40ff2c787817ff5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.2fce455b.tgz","integrity":"sha512-5Xv37HaeKttxGvCENz4jvIkANRUYLBqjM2+1JaROI2MN0VsI7TkuEZtPK7LR8npBweSCFLukuQ59p6ESdXoUNQ==","fileCount":12,"unpackedSize":52612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrUSCCRA9TVsSAnZWagAAJG8QAJEzSP5H6k3r+9usoanN\nyFp571be5CFDNrRz7ZhoY31Wt/H2UcwIUcMRhCWLMnm5ODX4kJRoYfKHOTpu\nSdqU57Cf2CINNWbrycEZAKcZs2JzvYzDr58xFx6U0ENPjwAsocN2vEhbUzmb\nTMd/dVtf62ECMijdxr+WHyVFRxpTMX9E6wNKaNvnV7oW0gQDicK8VIFhqTJY\nclsd957FYzZOHXLBQSg3SMRYa3JdeSq01itDUl2Hf25Y1poXj0IW8ENZ2O6K\nS+sgCZJk83P9vUlPqc+Uhi30SZBN4uqCpay1weo4exRQgP3GRBMAoukoiMaw\neys+zWOxufMk7DzNkqCvFlE+rm4TgCPY3TrKoOQ4eP3a3XrGYMvtLuorwEwd\nyMmQZy4kI5bLMi7amUaouvgoKWCo5/9qVVS8jIBq9oyHj2p9/TN3K18EX1gc\nSWdbhlFDq8BiNhTJTSnxrtONlCmZcIETP+zfmoBt9N31H8NPoGNt46Sl/UlJ\nW9uOlKMYYlUZQKEbqVGE8y48iv4w0niU/SOXXeCZsqqlsrVORL6/MyuO0Ntz\nEW1ue6EXgcf+AsI/uVi/6ah31ILmw5HrmIxG0TAwV0kxQ0vWNlho0Fy78ZaX\nh41U09MYA3gM8IlPVfTJJFNzig78IeMJdCO9V/GHZMJPt9u3BBabvit8mGPN\nJ17y\r\n=CP8q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHrsjiQXolR9XYzL/gaMsu/cnh3EtzGRjkaJ8PEdLPldAiEAxi/puSjG5eqr7xwwXwNb6mWRB1fhi+J//lSYz4WvGHM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.2fce455b_1538081921966_0.3293784907712103"},"_hasShrinkwrap":false},"3.2.0-alpha.c3c09a55":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.c3c09a55","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.c3c09a55","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c3c09a55","@crave/farmblocks-hoc-input":"^4.2.0-alpha.c3c09a55","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c3c09a55","@crave/farmblocks-theme":"^1.7.0-alpha.c3c09a55","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.c3c09a55","dist":{"shasum":"7e5329ab16d1b8f8c5617bf8109f1b07d2672b63","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.c3c09a55.tgz","integrity":"sha512-sq1j9NckKr4lb9zrnzqsB2dxHSOxRzIkHx0/ObJXO5j+zMblXCXo/dOwVs0KYaUN3mCAba7sy2CZrTYDEXHVaA==","fileCount":12,"unpackedSize":52612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrhjUCRA9TVsSAnZWagAAD78P/1AdB8e7N83TRj1IN+Fh\nSeU0sMEyCckzsZq61PVbn3JuxFhpDXqpnzJirQvCaNt5R6PPVodC0EoHNdS8\nxpe6pctg+Vxn5LLKQr+ZZ1zOIopvkJnkezjvJaAXuB/moXofWR9JAqGhUkZA\n55FF9B6f2kXZhoeKFd8/XlLRptmykNp9Zpx5vTVf2zHihdkiR6xDU8A2KZz6\nVCtPm+BbL+vnwitlxCMznoHLNSGqk0jyS2O65eIWtcPoIlZng7hpBl/2wSFw\n8i+prpjeO1zo0kpM5hNqE89Cjk+h2YndWaiIhUSnTkfTDRs9kc5dKAxhp4CI\nDLXu2P/qSz4IGhhs+/nXIVJbe6HTLWE1ubkAEblJnQuTQhXTqweKjEp7fAQc\n4Rl2Cisk45meYOzwYUEjqrKMqihjzH4E77ZU8rXRkHH5704uZb3EBedUJiyA\nGscoD5DFS6fRsUrN/hE53MWyjmPZgr0ycV7fCf3NXeMmA4R2GhIoBI5G1LOQ\nhVzLp5xwcoVlI75SWzM+v5bG3ULzbPZ2azVR2hB0VAv4cdtUXXZcftI8TQ1j\nM9TRg++gKrBh/jpkqJyxGS9iqLiOldrVbYDJ6Vf7yplaZEOeIFRL2yHe1EyS\n9dscgKK2MxHdQ/uc7jgcJ2QLXiAcT31x3XD9eTBCUL0nnRl2gIcjorvf1zLZ\nqIQV\r\n=eD9R\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC4nK8GcF99J3zfJ0K1RF3xzTG75sWj3eBqktSxjvqNGAIgAKLyiKz20KpwZRwNUyCVvW6Jwy00yoEYHwueaNdfGmo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.c3c09a55_1538136276245_0.26124079704788206"},"_hasShrinkwrap":false},"3.2.0-alpha.8d9fd451":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.8d9fd451","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.8d9fd451","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8d9fd451","@crave/farmblocks-hoc-input":"^4.2.0-alpha.8d9fd451","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.8d9fd451","@crave/farmblocks-theme":"^1.7.0-alpha.8d9fd451","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.8d9fd451","dist":{"shasum":"bcbeab300a00ca3ea1d44020d889fb032f7c8b4e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.8d9fd451.tgz","integrity":"sha512-KYfprrUub5ssLKa3mm59ZeimC4K4Ncx1p2JjHr8jCocFVL1ZMfv1YdSyMhbacXAR752DDpq1C0peV1njfKvivA==","fileCount":12,"unpackedSize":52856,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbriJ6CRA9TVsSAnZWagAAZl8P/2dXtDQUV9JZnpk5zxUH\nNqwNHJSBGQXFzmyHVDEsVhjPcZW0xMgjiir0X7VtjmBKFTC+QKisywGA9gN8\n9NMDXg1D3bVczd3oIh9N0+cgoQ7OC3jKUtsOoDDfKEgk8Zxn6SnWBK/EWdtm\n8NaSkiEDyX2HC/pN8LmwvYsmjdvplfrW7Ik3nslzF7GcX0xH9BVUTDEpRTuQ\nagxPW6oxcvIOBHu6GoJZWgvbdFLKJ5J0c1RKyBmyzPtTDJM9sYSRUuTP/A2h\n9SV7OlTj5Px24Xx6WcSR3/yz/+MT1ITYgN2By9mrOYKKDHgTutZTt8UzdNSy\nleoFEjpDl7amgxU79HdhmE2H0z3xeN64KRF7pedJ1RgDPYcq55hsQard03cV\nGiUDwbo9uBgB5YsgbE3M60PBINwpj40V4+iji4hD2Vbt3BNH0yeKQT1qiY8N\nGSSXJpfM5ia3UR20JA3p049WjnxjIXh+kv63TxYFp31evpmyYkhMBGl1kUvQ\nr6cOsaeCoDh9Avl5ARhK4H52q47Bn5pCB1xN54kD2HCqbP5Zki1SPyrT+M6/\nk7vyu8Nn3nIco77KtTkNCy3mGXW99dnh6lBzpVWJ3oOhsjdxIaKr108utQzC\nFvfdjn/dFlNJ1UbHvy3zZ/5GyPjiy7tx6T7LAbOqeHtE6ZNMxMJqxBfvX8GX\n8Ffb\r\n=TJVJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG1Tg0ssQCGLby7bRMqWU/SlNFs5N/dkz2Wur4qQWq2YAiArbMqOqmMktPsZsbFuH7DQDTYySaF0HfUlrNTOFG28fQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.8d9fd451_1538138746280_0.37482389035472874"},"_hasShrinkwrap":false},"3.2.0-alpha.be9091ec":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.be9091ec","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.be9091ec","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.be9091ec","@crave/farmblocks-hoc-input":"^4.2.0-alpha.be9091ec","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.be9091ec","@crave/farmblocks-theme":"^1.7.0-alpha.be9091ec","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.be9091ec","dist":{"shasum":"3ba2adb13d658ba8d5c8c07c9aa17dbf59b4764e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.be9091ec.tgz","integrity":"sha512-mWs3ypvTn3eaTBMcr5YI8KRXguNTaHuNK4WTC4zv3DCq55ng1360m7+1SF5ozwFBifT3+qaQtqUIFZPhoaES7w==","fileCount":12,"unpackedSize":52856,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrjlRCRA9TVsSAnZWagAAgC8P/jaBjxZwlMcCpAXFjFbQ\nuJnWMMU7uMuqRIB047dM3LMfqZodp9ZLrr3qjIcr8IxlUgXL56jv0gC9HGg0\n/8VQVLu0Tq99ezxkwCzboaZawkQbqcZQb+JnAB9cAy4YNtRVdbGFChiQpXOn\njEXe5m/pHCEIIcDnpNMO2nZj/FE4grTVUHiR+85XXjPbTStbcGIPMGJhqpVt\n/uGPS2dtG63eQja6CN/1DFzZTvgCOF5ZpZhPLZUkngK7080UekAFlsgy1Zpo\nuunzovzmyW74e8d1KVL6P84TwNxog7J736/7oT1GixG/7X/eH4H4l4FZknTv\nDqXsZM5q6nLOsI193wutPOL7fVjwsOdU/HrP0cm33GaK/AsuD9YNY72/zFA8\nY1WDhg3zPlHTpvh3uI7226nlP1Pg9pryg4hFslt+zy6fXj1z/rf5b6yeOnXB\nL+iBQah+65fzxK7FTD8wbA8sG72Qq9kwSFbf0ugqTiLscQ0vqncvt6oedV9e\ngNUOlzagurrZ3T1tx77kgiSYDpvlQcPkVMOsiWQcDwLIz2d19WeNA9ozd+Mv\npJp+g60780ZmQe2j6bsUJVRSAQQ0X54tOFivUuM43r+YyZo4os+P6LpSvqFP\nERqcZMGzyFn0Ma7BUZbGR0Cudsrzu9LMO82iq1pQQhfEuUGXNbnEeXAEYRgG\nAp0T\r\n=M8VH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAHLbSV6f+achVbkt16gfk+oE7R6eWcQgqZAqX0INYvgAiEA1y2WWxeHONt4xN5+mJ3t+fS0JPAey4xGoZyZylrFQ70="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.be9091ec_1538144593166_0.46841924523457057"},"_hasShrinkwrap":false},"3.1.11":{"name":"@crave/farmblocks-input-text","version":"3.1.11","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.3","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.12","@crave/farmblocks-hoc-input":"^4.2.0","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.1.11","dist":{"shasum":"5496884bbbab06078729bd21cdb6da4acf0f47b3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.1.11.tgz","integrity":"sha512-07LYEcbjRaP3E3zniL3Pk7AEa/jnFGh0inofqgHH9BeewFA/FNzP2DByS/6Lwp+nE4oUEiHdlUfaBQ+7BOISDQ==","fileCount":12,"unpackedSize":52727,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbrlfjCRA9TVsSAnZWagAANeoQAItjKIK1SrzWblzSl0gU\nlKcLEuaYyzlWTOBIwCDj/h+/yb3dQuxpIJLYWmgBhX+f7feu9ZbkBiR5bkZZ\nF3Th+cCED/1XY+dwOxY0VqCgdugkLZBDFf2OYUIU7ZW2wQzeAJ7hp8tFtjXV\ncctNhL6r6xTHD6r9TrKl5W4rCk1uCTjW/r4B1KdLpU9rfs6kYx08wGVwNswG\nzGcXdX1HQ2kbUkzua0reYdJG7hOpzG5HyRBcoRPh+Z+NI07oxw2LDo3OHYoB\nPeeUngbt+tez7979YnqWaVFq2Q70gAGFeqlLOmZD68Cl2bPVKwI8WmSaev+K\nIrM2MPB5jHokGAKFm0SkHhB8+sUh8ipvnkp15BHcqiiFN32/uQOwXDnnDgp0\n2JqdqJLlxAFZfD++DFwNjZucLvv6jzvzB8mfRiIb1/2rBdb7JzKl2cRArIQB\niYFXeA8jXwr2sTrsL9HFMxKUyZtJmiDXrUtC3TyNK8i5g9Xsi0jU4QHS/6fL\n8K+i1xr+PmTJnbMxHkzY4PUpRcBEgILr2Z9Xm0QO+iwYPM0uAKSVcjCjrRFU\nIJV/CnSPORY5xoS6Hk4EATbMsU6xz9/1yMjaqZOSgaCgt16wrB/+e66KR6W1\nqyvphp5ZqNHkGiLNmWfaZAijySqtvw7VOtvAU7ammP/1ff7jaBQnA2PMStoZ\nV+gL\r\n=euSO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFG7E1O1IzdGZHGyHEVRkHlc+xmETkk4kx4tuE0xD4kMAiB0ZyPeSzLiOZxVYR+IOqJ+8jSyf+pgTmsOGa9B1MGhIQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.1.11_1538152419072_0.9143335806839343"},"_hasShrinkwrap":false},"3.2.0-alpha.119a3a05":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.119a3a05","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.119a3a05","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.119a3a05","@crave/farmblocks-hoc-input":"^4.3.0-alpha.119a3a05","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.119a3a05","@crave/farmblocks-theme":"^1.7.0-alpha.119a3a05","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.119a3a05","dist":{"shasum":"f39f5a8c73514e0fdf39eb30808e42a08c35f1f6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.119a3a05.tgz","integrity":"sha512-n69xfsqQqDw7JIDXMGWkmmLRwtlGK5SK7ImgdnhGpPzHAf6IrA56OlaGEYbsqmjsCb2z7HDBwDfVIWb3ZOx0vA==","fileCount":12,"unpackedSize":53100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbr8uGCRA9TVsSAnZWagAAB+wP+QBT/P8M0JUj7y1CmmqI\nIkDkX+SGh1zZt0ORrMqWtSj6FyUuiRnfXVuyCvaYGjjazDmF/euVAhSEqz7P\niPxGorAyRquFvg3DHwAmkADrL//fjS7bEtt/PvNxjET5eWZh6KBBCMMozoxY\nnX9Gzv8bArcv4CybJGAdwHhDvJq1NX4Jbg1k3SQLR7QHL76MpNP3cuQuj3tu\noN1DDylmn8oL5sd69NUD8NnFpxzIzz2n0TSA9CAllwIfNLp5tWNEjlfROwVg\nftoSnlUeh8fig1pD9uiXxJJ9d0j/X7QT5BPuxiwYjd4ckA99tyInSenvlEFz\n1GPbdWEsT1lFLA7fzi/9PvO6+dcaCu5IuUgZh+yaPZixo2xeuhqppen1qUjY\nCHYKu+cww8gJwOYHhhwBAzwrajzawXMhWlVCN626uwVchQc2ITUjP805m2/Q\nmXNfuDKtaTb+j6bEVEcpI4amPggn3DLvGUX/2ZqqMgmT9hL3ulTnLU3NYf4i\nOLw38feffLiaHXlgwmRCxLgYg69v8Fo577IFOkImwO0YVcUADDoP/+ULWJ2o\nWQQDKaZaVo2BJK+cPOSzVg/VDPD3ePDDDfRgxgqi6/XeGKzXqRk0sO5pBwE8\nblcuhUf4oQaid/58EtVABg2nZ6T8Yr2ztOAdGmSdJefl7fF0LwZM+JjIqdQS\nKMng\r\n=yubH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAyOv/iLMVDLu2Zwx4HL/DKv5WaTSxWez3VZjnQf1l3xAiBN2R7YRlZ3pn8MjOyRXWJ0aFkmLGXy5cLfY+caamE8xQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.119a3a05_1538247557987_0.7678702777775592"},"_hasShrinkwrap":false},"3.2.0-alpha.67b7f6f5":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.67b7f6f5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.67b7f6f5","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.67b7f6f5","@crave/farmblocks-hoc-input":"^4.3.0-alpha.67b7f6f5","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.67b7f6f5","@crave/farmblocks-theme":"^1.7.0-alpha.67b7f6f5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.67b7f6f5","dist":{"shasum":"7cb7d72943aae4112a3e77d3c5a33f142a77f673","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.67b7f6f5.tgz","integrity":"sha512-SS4U3qlwP13L6eSR/f2QLNAx7yfrZZ4lyNnTMiFPLBbdQQmj3wVeFDRfXMMugTzZRdzQK3N4nh9LEsYqEIRxjQ==","fileCount":12,"unpackedSize":53100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbsTN0CRA9TVsSAnZWagAAJPMP/ivOgeHjOBkNhzGsbWAM\ncM1NOrnfzu3prL1JFB6vZv+F4yb2UMRdcUGbvDXpKOVVQeYuBh0Ky7r4gK0H\nhbi5POYnwaENAuPDwIEkTNCZ5olF1ohYAq0vd5zqF2pXZVZZ4RoC8b91UWkP\n/SYFgt2Spi4MGF5kpVoU21eJApGUS3+osWL4kzDlwKSCCvNBkaJ8gOeWZrv8\nweVetfBpZRwu4vFyTtC/eHUrBXVckhVKy1Nx/Cq20jZIWTxHBkcPSCp1OYmL\nn1pSZHUcUl+ILDjEF5Tbob23IDM9UnTBJMC5OEgFI6nNhiN2JldFM+bIzZh+\ntfBcDyacm4ViYnOtgYXj+Mcys2KlvXjARZP4Rr/fH4i84QbMWhSnfX36GiLS\nkzGs9pAQswFIyYU5d//nCnUCk71ejeIWUUaoUAZlZZOzvZoPcqvwUFHYNhaj\nc5MiH9hOKwmwCuzBM54ZS7xEGiNG9OcNtfliMwQeqp+9IzWGOZTTBdPXUngE\n0jqbOtF0++P2OwOmgoGuM1rYXuE8Ny+DegOeICU2dGmayc6IWCTlyanZbeT4\nuBcpq0X+TLTZO+SfYIUYj42L6AXhlEB955k8HtWojDL3j43/CtWpEXDgP5Dt\nbTZJhJu/vwINbitgdBvMdR/N9gaf2asm/BzgHV5FEX1QBl6zcHKyXbO64q9r\nwGE7\r\n=9GT0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDN37KA0BQIr98mSo1GkDRRba+HtTaLEgf1vSTd29/A5AiEAhOBuAIzaGMlWpQxzGm1jpCrnr3OfFiE00XLFSZlrRm8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.67b7f6f5_1538339700212_0.11555420454281995"},"_hasShrinkwrap":false},"3.2.0-alpha.e97ece4e":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.e97ece4e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.e97ece4e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e97ece4e","@crave/farmblocks-hoc-input":"^4.3.0-alpha.e97ece4e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e97ece4e","@crave/farmblocks-theme":"^1.7.0-alpha.e97ece4e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.e97ece4e","dist":{"shasum":"87a0d9398bd70a6709340bcec6926d67d28dbe3c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.e97ece4e.tgz","integrity":"sha512-ozs/I6rzzCi3BYypgjl6iJahqGG2Al2vqQo5CDVcB4pcfafdjIa9dYYbznOjZag/aKmdniADCtYvbEepBKBTPA==","fileCount":12,"unpackedSize":53100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbsjRyCRA9TVsSAnZWagAAr+sP/jZl8FX/H5Ehsk99JiE9\n1MArED/6FHg1+HyAUn+yzeN8SY3mZxVME2iW3Q7inS7gHwWxTGFbMn5GPIwB\n3HaoW3JA1ZbRkYOluh7OjlYHaYePWjM0NG1WIcg+myS/PRHam90YZ8nwxUzE\nukVhNit2RXw9Aspyc63MZsIXcWx9gzEBYzsWmiBDi4GzLad0Df1fR3Ib1s3z\nEcOPZyKT0oFqTOh/MmbXaguWt2zNb9rV9UptNHohgq889icv8EhQamuOziV8\nKn5qTzsH2T/z1whZZdJqrq2nSKxbDG54XCAAKs8fvMYazCkz1e5sBgH7VLwo\nvn1ltg2ysNDuvHxkFntCmmLBwaeSRmOXLz5tSS0WUaKtQ3+b7CpcO+TmusEZ\n+scwFjYu3rIBhkkXGWWhkdXBUoC5v1wCL0/uaSnwinhd0HFs7eZLdFEdcifu\nPsFvtOZRkAvWjsp3MrMmZ/TuXFAEzKBF4k7uNjnZVHq2fspJCyeksCVccY61\noArvjDTST9lzmtkf0b5Y4q9G4cQ5ikXPlEjrxpPDUQeeppy/s1JZtM/jEpA8\nIb9AWNWqt8sm5L29LlWXX3KtpFQ7R/D1SNEo3VJjTtf76PtpMnwc2YPxCsxH\n4cZp0T3EZptrh+Fe8ZXtRPqSo2yNcnZOSzOlu1OQH35i+dQjBEFwKsSWF2EQ\nj01P\r\n=WhIF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfRyhinsm5aXD/QWPlNY59jOHjVCsF8+uDpb+pIsWIDAIgdb8jJvaZ0yX9Jaq95XLTxsmw98CXdvgXXC4Z3FbdIAw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.e97ece4e_1538405490227_0.9704314757967754"},"_hasShrinkwrap":false},"3.2.0-alpha.7a7b512a":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.7a7b512a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.7a7b512a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7a7b512a","@crave/farmblocks-hoc-input":"^4.3.0-alpha.7a7b512a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.7a7b512a","@crave/farmblocks-theme":"^1.7.0-alpha.7a7b512a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.7a7b512a","dist":{"shasum":"91796b89b82c22b84a2f9d0b22ba340926eebb96","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.7a7b512a.tgz","integrity":"sha512-HLbevm67rmh7sESUSgz5FeXZofBePc9MMU3ETSh9O/2L09wUkUtVm8l2yd3FQrLr0vUf4a7f+AI2QfhFcRUryQ==","fileCount":12,"unpackedSize":53100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbsj+NCRA9TVsSAnZWagAAqcYP/2RG3heW+cpvt+wO/Zsy\nB0XrSi29ncNSqvxTxUndxcbiSoAm65yd0dXoTdonGfrm23jljDvH9wDYDTVf\n/z9C6n8BvW2UWhIRTNSx2dWrDXHK7ACvk+p2EwE3q1b1ErMOVX9wBjrPSGW0\nCj8zc0piuinqpKFKhSA0As3ANOJOOAX7h0weFybeXHPA/O2gJHsat8BHks3W\niXOq5NJPB8mLpkOL06XpbVWAzQPgrlRgSZ9fR8qOhG2WK7MQ+JukZ5HIRgeo\nwWCqHSGWhF4pqoLZzd4dkhF7bBFLC1pmO4ZcJbF7wobj0KTxi+s8ejFOieYY\n/4S/mKsCMkVNhQRErRFNWardn/BuPljBfhFMbOhKgt/Sren47ok/lzmGljnL\nE0BicjWV919Hda6EwvXQODSmIjlaBLT/A0/Mvvf9Pxib2AhC+R7+gP69vzAa\nKMHgvjg6d5bqIyaZDnpB1+nrwcd2vtFTB5vhyvfFyrkDrnCAe3zkxFVBXS5N\nfP+bN6HWOipfHjvlY6iMGbv9CyR41jQjOyz5unZvGfe8kFbwYoeRTxkoyXKb\nJfawt1scfyAnNwaOfQq1pqHG8fwWVVMUZynhe44ke14Bbd2mFIr+hC7r7oEX\n8i3PthIbdEvcwy2KrKxFNghrYXIS5eNEa43x9reN5P/WhSIl/IqGpjSGuWGY\n/YyB\r\n=cka8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHmYL5XfV3xzeIZFMHQW6CrpCypx+xPARB3pYYRGtm2QIhAOc1wxbMYdmXpGyO4ucFhKS1bmGBGlMVfVC1Qx6F0e5T"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.7a7b512a_1538408332612_0.6067832020770263"},"_hasShrinkwrap":false},"3.2.0-alpha.f222d9e6":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.f222d9e6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.f222d9e6","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f222d9e6","@crave/farmblocks-hoc-input":"^4.3.0-alpha.f222d9e6","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.f222d9e6","@crave/farmblocks-theme":"^1.7.0-alpha.f222d9e6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.f222d9e6","dist":{"shasum":"4c2af9d4242d25aa4ead03280112d5683290ec5f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.f222d9e6.tgz","integrity":"sha512-4QVUMn5etik5cc224Xc/ZAYAUunX7IwgXnJUARC+nmM+wAfFq9hp5eyJ6s8ls+ZgGeTdGV+xe18044IjMgsuKQ==","fileCount":12,"unpackedSize":53100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbs5PGCRA9TVsSAnZWagAA7sAQAJMtffXjUQ1D4/XD7OM2\nZtfSoM9lSNqDZ3S6hPYUBnGK9LURNs2VOugcr1JsMkWYMT1SRgkxoo+fhOda\nuApArQAOVIuRu3RiARrTaghzYZiiCsOLH7Agj/KTnd5YiCxyBkXYspTUmKBL\n5uLnWtXYzizR/mYpULWGOSiPtUZwPbBrwTdeHtSiXN+m4lVL7b1Mwm2bGJ9Q\nU41/fGYRL3RREn12SsS9pHNvGbkSrDBBYZgAzmEfr6qjKh4LaN31RFezHsQj\nPdKuyQScc9VZH61u83tz+4cnRbe+ePzNLtnyVGnVwncqy4MXEpPHkaPbpiTT\nkiRSdIzLtjrekeDJUA6gTLRIX6HdSXt8CjPZE4KPsSuoWKO5GkTpA5Ov9MyQ\n7i5W3kqUPMnO8VpqU3roxNz/k1yeROc7g7UF/yMvGwBvWGcd7z6ffiE+4PFZ\nby+NbbW2zAUKRvA0o4qau1UoJiiZy9EiLXtbmkrASW6RS9QbRbn1pmQ7t2dX\ngT/cFu3mqyofCoVd8otJcIhZ/75MwfqZcFXLpc5lChcorRL2YOGLbOFT0aou\ntq3TY/r6gSzJu2itDPbXPy1lywh6Kjy512AgAzyG+2rc27gaVXJhE41/1JFI\nZcdtC3UmKAWqKbQbOvQmGO3eovoSRTYth1yjTU1N44Gm0IlXArqJn08IDC68\nj2pO\r\n=mdkr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnnffFK0ZS2MULByP9soqtjxiPgLN9erErNfVetujgCgIhAJIAMngP0hnCiheN9Sd7rymIzMqYQm87U4wcGk2tCh4e"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.f222d9e6_1538495429856_0.7025401759618244"},"_hasShrinkwrap":false},"3.2.0-alpha.2090b6ba":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.2090b6ba","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.2090b6ba","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2090b6ba","@crave/farmblocks-hoc-input":"^4.3.0-alpha.2090b6ba","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2090b6ba","@crave/farmblocks-theme":"^1.7.0-alpha.2090b6ba","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.2090b6ba","dist":{"shasum":"39b07348c8a65353cec0bbf4e9df13d11930f8de","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.2090b6ba.tgz","integrity":"sha512-TkEjFRo9o47YxZ+RaJx6sBByEZKp9pLngYaTl3XKDOUSEBX51Uhut6xfkqbzpDTKzWfgIkoyHz++pwPAkvpAGg==","fileCount":13,"unpackedSize":55771,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbs7oiCRA9TVsSAnZWagAAYJ4P/jRF69Fj8o8NSBawUwJI\nFFUdjr5nWHcL1AXYwXiEcEjAEC0pWSOFso2T+ws2OVMVvTJ371c3BXxtYd5o\n4FflA152hXLA8WldWHEx5KI338HUEZ60LjvlAaVMJxm6KS9BQc1Nd2xxRBCQ\nWdYwI+W3gypGbLvSOftyFWUlh8cbK9eN6NGSCOcP2jDmUw54iaVB8HUigIkm\nP8UyFqGxf4NUl1D/oMaIKOrPEoQ6UlYV6s28CsijSeYVMt8MaUv2c7+RbyeM\npCRieSxWpwSKzsXpRDyeL2MOiWA7K2QjF/21FlN5Avnt5yZmbYp8twGh+Egg\niSv4Ctr6euOD0olSapJ12ZOLgM6D1GOGjdWM0pItg3C7zXQ4Z4LYPltazcj3\njehDriWUtEI5e3HAUrUdhVKQXEN9PhP4sjagBl0rGPDDaKZ9rQGIjd4QeLwY\nodJDe9HySWowS6M4zKq3CIWytz//rZM1qe4/7M0XvuqOcXJtyNe5Wn+ue0t6\nmnpJWLhJ8t2Qp9fJObyekxEoTBV3f6uVa4ux0YC9kxEag5Xas8cZR1sXz7F8\nt4PUgvWp3X1BXgQKDObssA9nY3y3wWlU3byIMlQLufKNLpuTKL8J/HNx7EyA\n0oCe0d+nEK4d84gfcORR74MdYt/0X7opRZSVe3dcuSJ3UgkKriunpGIuY5Ap\nK5ku\r\n=6vB+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBoLI6iPc1h7LeMEZQQ2X8MXG3FOcjTINSADe51ZCt6oAiEA9W58TCCuIKbu15pM9lU47S90WnccqJ22VsPvNrtS08E="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.2090b6ba_1538505249747_0.007883905746485675"},"_hasShrinkwrap":false},"3.2.0-alpha.ad3732d7":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.ad3732d7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.ad3732d7","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ad3732d7","@crave/farmblocks-hoc-input":"^4.3.0-alpha.ad3732d7","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ad3732d7","@crave/farmblocks-theme":"^1.7.0-alpha.ad3732d7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.ad3732d7","dist":{"shasum":"4e49418644008b39ff8045eff6e3ba00ac5259e3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.ad3732d7.tgz","integrity":"sha512-jT36mBmMmH4YWn3gTyZ0pj7Vc7olnNmZklazLCLLU5Fo3qmkSLGjaZHvAaqthXxub8TjmGa+Z3gXkXyozxynQQ==","fileCount":12,"unpackedSize":53100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtIXCCRA9TVsSAnZWagAAqbQP/A/3Pr1hTmGfS1iJMpz9\nYpMkNwEvWiAkNoeP2+O98LQxOkSjMze5BB7tZjndeDMWdHSbo6xIQ9QBATtq\n0oXY5opwqWRg0QgZwOz9EehlfNT3csClDzN7tPvDPxDI2TGIM0KubhaBz5hW\njdu1yDafRfi//x/vbnAg6CeJz2WUXuFI+muL9PQ6HuGSDWBk7Jm6TUdRfHQX\nSggCE/ys+3fJYiH/pS3lebYs50oOgEyqMXjyDGGfbbigwjhPTtqxBkuiOYHP\nqV1yTARMQXfXKDL110jvd2/t5ntC85Pymz9nRiVoPcfMt3Xtv7IRC5WceDdE\nndayPZkaYsYcrjaMQYZGIGgviXYB6Z2jYBRvfqofp72NgkKgJXR06Znyh1wd\n8PzO1usojNmFzQ/sRvmpZjB/hihq2V3vP9kwOeUUj0OktLJrKRfdvFfRLfY4\nc7O/dzfNkSEYC7wns5Ry0ciyg6QHOYF81fv+LaSLHCj9QmKOTLnprOn3wH3Q\nubWb494tystEHPip2VcinFL8AXeurObi8po75VV0pVKJuKX0jp1kDeBH4fgQ\nxokM3U1EIMpliqtJzyle8t7dB/5DcqzYmQdZdAvKEI61bXv9NMjKN+YhvxDU\nCR9iXqS8U+6SRVUGIRNxunbkVe3JJ5XLEpKdAn4jlVOkP1COErT9FXVrMp4y\nYWMi\r\n=S3Gx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCdEFr4X9PbihqNt8434ZYi3zZ+q1LMECFOPZMUPVWigIgQYl3u5GWo9Q2Y1M/bi1hjY7qyLMENnCd3B3zi+1i6Ok="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.ad3732d7_1538557377250_0.5124086198511069"},"_hasShrinkwrap":false},"3.2.0-alpha.93382e1f":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.93382e1f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.93382e1f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.93382e1f","@crave/farmblocks-hoc-input":"^4.3.0-alpha.93382e1f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.93382e1f","@crave/farmblocks-theme":"^1.7.0-alpha.93382e1f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.93382e1f","dist":{"shasum":"f6035e7fe5fa341df171e071a52fd2bd44bcdc54","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.93382e1f.tgz","integrity":"sha512-2IlXaezFJlsp5dVSPl+7tbfNz7Sv5o/sAA2MgN5oN9GU5QzKs2ZiZzHhOpBrT2JZyx9s8U1ee10r5HMH10xOVg==","fileCount":13,"unpackedSize":55771,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtLOACRA9TVsSAnZWagAAGCUP/1qrIK99DxbF4oLxHapx\nY7bXXU7LhfSJQ7UdpKab5yJOrYUFVS5dhwran5B05Ew6+16JNtKrHUDjYW9l\n8b4XTzhk5294SHTDF7ib645SjH40FQKRDf58og8ECdZ587km7q5xXjNLkHlX\nhHdDRpSIuwpVjnJGGt+74z5VLaCaK7ErOJbtCOaIJH/T8LG+I0JVOih3tMKN\n+7lz0XUlR/aZFtAS628jhJoMAVm+r+4QLiJD9ZNzVO76/XgH010JMvJgxd4c\nKHPQv/0w+CYwFlul7XkvvqY5VxRqktcrVDiSsHchDzioR9IAKplnQcfgLnwl\njEiHhWho5++WVZwIulyP3uR8SBFZ2WRquO9CquOk3wqzxGJwO8rhAeMI3ufm\nZGFllW9DS399yv00eLDXbTNbfUnFHUng/SOybHrsI93H+2WDZ/pgQ47fJYR9\n3qsKy/0una89wavmseI0Fd70QDTBuwxObE8eKMcJhI9KnZj4/Uo5PJGW4CQu\nv1jZ/jEhvd19ZMWhuDC3TUhYGYx22Lc6LkVB/+U0m4gNXoi8mh/Qk1GQhXHs\nVnKC2CopOq/kRBY8euM+fi3yRhhBp31K4FNwA8Cr/5D2YgiDo+NqLTqwg54/\n9htBu+jgmy6Nlt3bVvgtSCi0WjPTIgjs3TGrhLSlSH0Np0fLErbas3znmgdK\ndgva\r\n=rN2v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzwI251gS5u+9kBuO/TUa93tjfN5fk1t/vFHjXBmhRnQIhANekugaQsS/tJGdkwPPzg2p1ZeGAaJUqcZg+aQZ2/VMF"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.93382e1f_1538569087378_0.918714638467089"},"_hasShrinkwrap":false},"3.2.0-alpha.99863187":{"name":"@crave/farmblocks-input-text","version":"3.2.0-alpha.99863187","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.99863187","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.99863187","@crave/farmblocks-hoc-input":"^4.3.0-alpha.99863187","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.99863187","@crave/farmblocks-theme":"^1.7.0-alpha.99863187","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0-alpha.99863187","dist":{"shasum":"e5252dada7b6b0be0396622f31fcb1bc69d3f8de","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0-alpha.99863187.tgz","integrity":"sha512-FnvKtO9QqVq8RW7s4gOf1t6pwk8dzbeuT7OL8GlrAZNPLB/5UmZKWqRU5rYZF9GTQqaQhz4d1dffsx3Xx9dMYQ==","fileCount":13,"unpackedSize":55771,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtMQJCRA9TVsSAnZWagAA9LsP/i4o1c4mtfEcLNuFXgG7\n2w9EGQA7oSefFQv3VWesMhTuyNtb0uuRSQLoZ024vz2+eKEAvQS+5wKlRA0Q\nFRUZq+iv7P1B+zuXwIyOfEZSM3MzKjeTiIjoQeyxy53yjutlqrose+A2GNCV\nolV/pNrRKsPcDRRHpc4qxSKXfzPOhrBK1zjIKlojAyLVoXKImMzIGcf+CCIc\n7utKWQy48iZFWt+OnCi8hLoyHFXXRi4W5oGAPUejdlwM5ON+0E04kRRe3pxA\nhznpkh/RmelDqTRbnRvu8jawUgPF/Z0AW1j4+mJMnDmD0VoDrD6tWU6ZX+iE\nj9IvqfTMUHXNQTI4YRR+c9e4gyhrpqn5hv6pC9qUCmb/kkAgaPd/BdRv13aq\nZj1V6s2gwQOEwHu7R4d4o461XwdkY/2ne5W6OZ0wry/JmUCuAZ5FknLUh5Gt\nyzdMaWn2+5m8ndoSC2v62UTKSPB3wor+SC1Ia99bBS310GcdbELOzXKqIFzB\nxSxA2GadJ74bU1KOFxI/35qbb9wbFUinMgtaAxHpCO/cufIAjgZ6LRdoVhWz\n0IMNR9m0gqACVK/WMorA6oTTwLdqEivy6k5ab8TJ53Feg2vwRCstNlo8qEFH\nW8oqyX8zC50CQzZAsHqu+nrindVBTcN7PN5LG/ypM/l8nVVpVrCSkzS3EPi/\nqXHx\r\n=Rmkr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtG+rMtMk+CUzWJtnE+VLgvjl8ckodk13Kx76zp/Kl4QIhAOFhaqZ4nZ1Ey0283Ldatk++rwkv/jkDzakJfoX2J5yg"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0-alpha.99863187_1538573320441_0.7126208750008449"},"_hasShrinkwrap":false},"3.2.0":{"name":"@crave/farmblocks-input-text","version":"3.2.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.3","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.12","@crave/farmblocks-hoc-input":"^4.3.0","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.0","dist":{"shasum":"119c25c75a71772008cce7129f4738625811c487","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.0.tgz","integrity":"sha512-ChRdwWgLV2CzUcjP8wtiU34LaweXhsWj/iFuyph+3wSDqfL1E+SVWB+kzynv55ZxszmfOt4Ps6AzFHjdSEVpVw==","fileCount":13,"unpackedSize":55637,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtMhbCRA9TVsSAnZWagAAStoP/RAKRW+hVbjnr5Wpjva3\nbUzD/zyu8prdfLYLVdI8RGv99C4yXqgHeAeYD9swgrNDRX7rvJiW+sD+X6O3\nRNnGGsEtGL9DUJjQU90THRKDB7N09w0Jk8cCjZlmEj9geiv9Cvo9thHd63Wk\nB6GO/lUKRD/AZXQAnuwzBEBkagg4BzVGN7Aa1+USLV+eNm7e0f032okPdig4\nUZicULmuiAkQNDeOgkbv4PB2WtQ8TdW5q3eBnIy1GMBsawcvtB7r6+E9Y/ts\nSE+fV4tknflaRe3YRhTCzMYSLT/kdOq02Pk5ncXURz23GrTFDrYaRUPUjpB/\nUdxa+ZCCpUOjIKNstQiMArO7YPQheDGwAG48F1/83mtk1zoKnmhD6me/TjlQ\nzGm5cCnjobwUvusDX+4yNzVQbmys32chuf7RdN8b9ZvA1dJUg7K77mxnTwBW\nTybC+MMn9BOsyvGTzgONH+nU0MHtcXYubhoPJ51WGuCeJ0f4G30hN/oFd5sr\ne3KrNS1sv/D+HPNqwrKlZ0DnOJ7r+d8Fi4mbQNKOSumZDFSrCGXNW67EhnAv\nFqZarcI6rHiWBdqX3lftq14kRjSsVfCF7G8iq4Jc26SqFras8wrTi++KeODR\nKqSif1iAzZWz21rrum83PThLAmPjQSvFRNqf2/du89kJ/1vyJrNRn+M6AT7v\nx2s7\r\n=8rNF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA5mBBxgkBuEJKq4iGi88yBTb/S4cf/v32Tfm28B9s61AiBjvAZimo+esV7L7M6Q+xa3KnhGdY2OWjJzrbviFLehBg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.0_1538574426399_0.2760245948151414"},"_hasShrinkwrap":false},"3.3.0-alpha.f9ab7f2d":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.f9ab7f2d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.f9ab7f2d","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f9ab7f2d","@crave/farmblocks-hoc-input":"^4.4.0-alpha.f9ab7f2d","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.f9ab7f2d","@crave/farmblocks-theme":"^1.7.0-alpha.f9ab7f2d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.f9ab7f2d","dist":{"shasum":"2c7fa4d4fa499515780241d96145a64443e72003","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.f9ab7f2d.tgz","integrity":"sha512-P56CmeDOkEJPBG6810gvjDYjwS7dn+fP5ESH66j002UVyx26UaIU/3CfgNUbnhQAdKYe83JKMmw2ylV6Yw7wOw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtPiPCRA9TVsSAnZWagAASqAP/1aDgDBe/hE9QihCIBNi\nzrw8pIILQBWy21p2WrpZDjmKTUcyHDew4BG2N1zDEOXyu8VvdLe+trC2WQG3\nPzHiCpL8og5ebuRMkhN3kP1OrnGkx94kUdAMy6RlcXnRuv1oEWpZ4z4SjJOU\nNKREzwjYPv9taVRUGlyR5xBW12jbXuk+esAup8tgwSwO03KmOO28F8b++8d4\nG3sLK4I4sw66wM/8Vecn03m5ON1QKKUh+MXW0ESaBNbkcLpK48GpN9i6HsEq\nJdu7gZGIJhm93wC6EG2KGzP0CSOZnWXptXhvTdT1Uy7/Wqc8vrOmdd2agvjE\nD/XsvuKwwiypTqcs4U3Rx/xc70+EFI1tGFp8YO+LMb7JcXsf7K/HxQ3Jz0lZ\nPI9iazXkA9OpYs+0F/YuNzgZIajiTe27uxxmU8W/987oGxt+CyNYnSiJ3HFf\nvkp6IpdF/+R0SeUAAkpYOtIQJbwn/uVfHI92WBfFqzzQ8EHjqGat7oqWegwN\nNZ7IxxtXmKWC2Gk3SmCcgu7QUfSSiiP+3CVHJ68zSPHKIWISK6hb6NWezpy2\nI4N4pIp4JUB4gURXKyXWaRwf2/7IV0Z2BiOWNmxYETmM3jmWN+UMSkNGYYbt\naandb6/eXdvYX2f+vByi913yNC1yjdWRMM/9hCXtCxijcTSfQG1WOtnQ8WPJ\nBq+n\r\n=0XHp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCAAnFq0TuihCQPL4KaWH1McVAc1T9sef4e4RetjwrRQgIhAI971GNFcWnEl8xcCi91voNFIZiln0b2bG/WGS9cltiw"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.f9ab7f2d_1538586766928_0.3579636678839533"},"_hasShrinkwrap":false},"3.3.0-alpha.cf04abcb":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.cf04abcb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.cf04abcb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cf04abcb","@crave/farmblocks-hoc-input":"^4.4.0-alpha.cf04abcb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.cf04abcb","@crave/farmblocks-theme":"^1.7.0-alpha.cf04abcb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.cf04abcb","dist":{"shasum":"238a56a399ae500059fe119386b772cdb76e2271","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.cf04abcb.tgz","integrity":"sha512-nyVfKS5P89s4MGB9Wa8rnx8mYnItMgGolrU8UtkH3jORnvR3dBGOinlWa7R2+a5VszPyr60CAsWaUGdpv3e3PQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbta7HCRA9TVsSAnZWagAAJRYQAJmwtGX3TJnCM8bBBvEp\nr5B8oCjIfRyw4J6xpggI2WG+u90WT4y096Saj1rFEaKA47rS5S7epANIAVcC\nC3hA3zujSEfzREM67sna2/T/esKSQiFL23qyANMnSEDkJN3n3YkhT0/4ZKgs\nHwl7mvbA4IkDew7n0P0lEGy2+MNNDyPnmcJZDThHIyI0wcat2fXatln3oCVb\n8AY6z1zPwR3vBqMqDH5f7IRf79z8RShzincq07xHr9aEXPMdQD+C/3l9jzIl\nzQBMeZ1wicIg8TvZOWYPOScm04m5qZwbSrQlpHIhjPM81osCy+sSbL5+JewN\n/1I93yJpw5xT/SD61dgyMxlfRnVzI6euMuTGVs9KEFl5EIVsdRBdLn30MjU/\nXmH5dgtK/q1+UMOccJhhdLNgglQ4EDc5POWnQItpsy6JrF6UQOCG+Wz39ai+\nNw3NYj6LNVuCz/N5W9dNakBdZ6x2U9MeFki4aHSMoEFqcGoO7kSppb2hSWtd\nn9eoldG5xMjMNobVEGVmv5YBHIoDUisjGknMORGDYP2Z577rM6H02ZQq1C3G\nWgoGoWE2rShe9iZJeefbsjk3dSX1Gvj0jwNshlsX81E5FvJx62nR1gS1MDCq\npz+YWLCWMzLfcu+aTqtTOyxNtHRNJw+FT6MzEszNSTaSz3uQXfrKmlOfJg9y\no1+h\r\n=q0AN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID0N2nPZcfMczTWbzroBPZFLxqXEs3qEhDHvmKNqn+5IAiEAkjnFquYFv6HZHCI+xjO1RII6fpv1n/nqrc/agDovLo4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.cf04abcb_1538633414879_0.7320182422181682"},"_hasShrinkwrap":false},"3.3.0-alpha.babdc071":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.babdc071","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.babdc071","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.babdc071","@crave/farmblocks-hoc-input":"^4.4.0-alpha.babdc071","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.babdc071","@crave/farmblocks-theme":"^1.7.0-alpha.babdc071","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.babdc071","dist":{"shasum":"30cf3c44bd28a6d458752db817acffaecfe5c04f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.babdc071.tgz","integrity":"sha512-ijob8E2ssJMPoR0eGRrkOR70yM5kFaxtotooFtS+XG+qVZ5m9oXIdnSbjnPns9rnhgF9c12GXRnuDocB4BpBvw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtboLCRA9TVsSAnZWagAA/FcP/1cGBhNvNstTFLtS1CyI\nJKo6JbfygcV/yMTxPPyJBsZg4UvH9IVq6woEDWenIzh4AF/L4lFXLpOZgN2p\nspS49PI5JRRmuHfJsBg16vSe+EbZOw4P1cqsVp5irFl+TUzbn2cbgUs0mB4/\nUph/k4zISxWb+cgg3vpOx0PaObUpYj0/Nm3V9bv4WIxgrhY8aB+d12EJYSVU\nRt0dTEVREONObNW6/lm1/2JHFB24NBUuAjc/I3lLd7gnoOwMeG4QFzboWt/I\nXhNwu0EZlOQNIX6GX1DoAOuaKv524M4Aju7lfwitbUOUsnBO2eSaPGEENgaY\nv+ZsjaIdcmFqi7q9qkkrD/LjAnWhTmOZhzUCczRlPuqQomyUYxq4SuVRCho6\nZBgteQog3PxAEewPJYYds6O8Ny6GA1d3lhILo5F7kefW/wiMrwCx4+OY3N5o\nYd5R1ZIXU0fnRTdnJMJo7Toc1dTMYpzx067N3dC+9Kz5uFHPNZDQumScdMUI\nbYqhlbmPWba5mEy+iqz1ZTDio5UlNJ761Ms3tHRTKSrcYqeayVGm/huT1fHD\n3D/m9L+lQlibvedsg21jJ44qrrIHYC+nke5rVNkYeiXQfgu24BnEyugDtgXD\ntFr98wyGzJEPdL9Xp3u6PJWc+lILWXCHEflsM+DrMlwqbjQfdoFJWsXBJV8G\nMMsU\r\n=KbHZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDlhstwfeDqEpXoSgLQFVQTlVyoe03pu+BP++EADtXK+AiBZ376jT7fDm50WDVvQuN5oWTOHqTjsiSZr9cSS/g00qQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.babdc071_1538636298509_0.09010273880886133"},"_hasShrinkwrap":false},"3.3.0-alpha.0ca4fd12":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.0ca4fd12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.0ca4fd12","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0ca4fd12","@crave/farmblocks-hoc-input":"^4.4.0-alpha.0ca4fd12","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.0ca4fd12","@crave/farmblocks-theme":"^1.7.0-alpha.0ca4fd12","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.0ca4fd12","dist":{"shasum":"8a4584874252eda6e379fb89032cc6c90a00817f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.0ca4fd12.tgz","integrity":"sha512-VY+EE/uHlLZOxzzkm6yVneenkhpL+90A/lpf2Qzpnzb/PNeknlmR7uLXFVxipRTZxWQaSdmGSHlpVew85shMfA==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtmCzCRA9TVsSAnZWagAA2ssP/RwvX3WzSPdtEjgk/YNo\nP/MzfMYgLnreJqXVTQRIGg9qF8OrWIWQw6gA0CEXYIRfHo5W3xiTcGL73BZI\npMfdIC7Op0isjdBJ/MrDcrVS4kPPD4NOPYPwJgWkXEsE+yrjKLc/UBDGoc7F\nqMqOFeBSAKRPTWYZ8M/w49WCfrDz15F88O1hV8VyurzME0XjaY0ycH539TDX\nOU55GG7Z2zLqUrau25zICQbGSXcaXtW83kNbMsfqFeEITDjoK0/atZoEKg0O\nWMg7REszRacoLOG54LGYHkxaAibtGlmilyh2QR9EwLHpi+9/btl5iToME3T2\n1iQQG9pOEyNgweWUVMnPM9HC5FGRXiuvXrcWxiWPuQCVBSARqC4Pcq0bsmkA\nDt/Hck8B3ctjcaflRUKXvJZuEIUW5YXJbGDUzl5IO61I1U6ipu/Xsoro81Hv\n1LGHt0EeaoYVbUkfng/gr8ru/VjZCT8nk5taOOjkDwopxJwx13EJkj1Q+Qgu\nG/ZDIfMCo9JgIs4X9BVY8zY7kw+DlhJJ/VUq2/MCkaAFi1n/xn4aKDU6mTVD\nAcQjfemlHO0qZS1Mz2gIM0LpMkd1pj00V5GJ1BzGjZNpfinMC0GVR8YNbPah\n1aOE40LhNNyAnKxVLOhgsYvkVs0JhczmNkogkykKrP1A9ypEhPJaj6Jb966/\nJ5Fp\r\n=nJYd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFKzY78CbXDfSpfM5CfqbhgiKqgPigBWy67dlZWEChlwIhAPExMJ5nTRzp4UIFTCGqDsuJNGjGGn3dCtnu5HRmFKVb"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.0ca4fd12_1538678963264_0.5725760847526036"},"_hasShrinkwrap":false},"3.3.0-alpha.b3932f55":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.b3932f55","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.b3932f55","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b3932f55","@crave/farmblocks-hoc-input":"^4.4.0-alpha.b3932f55","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.b3932f55","@crave/farmblocks-theme":"^1.7.0-alpha.b3932f55","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.b3932f55","dist":{"shasum":"e53407d8bec78fc8a9392f2efa67ee3880bc8cd1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.b3932f55.tgz","integrity":"sha512-iYfHBunMlWVmOwfIv0kPKzPlQHli3otvTuKbUqCgWUxOz+4m5FRmPQKU4fFqExHH4O5/dIQmprrLbvxMqcq/Ig==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbttGrCRA9TVsSAnZWagAAg5AP/2fbEqciAwfi5e0j77gZ\nX+dLjn+owVVH09B7HzCDyHuO4Tby2p8kpdwTDjXKLaKTGv1b0onyU3UJfJeX\nv6UM4OviSTooNtGktJEef19kVEdCXpu0aKR5AMqmykp6kbINuAqqDHdoUNYS\nTweOpaloJg/q2E8eJ4emEeG20pTqrnZcTQ0jU8gszUEC6tZ2ZylCPT2LK4IN\naSGIf5bCveg19ZZhV3KOiNaTf29ao9VzO0Jg1UiVllW9V3CZxypEvumIt72x\nhFg4fnw8uCJB797cfbsl6bbKPl4WuyahkyMOgtykfJOzKvAITpX4d0rzJFJe\ncPMK+w5esnJNxnkI1kZdnffl+LwUpaVTEwCrZHPlZByq3P/EO0/04eYPbFrz\n6X+pLkllT4gXVImqEiEWLjuwbFNL3xHhcZRzjA4Cj7BD04TH+xPijw6vE3bG\nrkk6b0gehDNH927HoyTqHQw2a3bWY0hAIa6g+36/1i/4WYysoVOGFDRDlRXx\nc1zg/Stym+TFyH+eF7DZwjGLqsEvr08LeQIDU42pzB7UHsI/SvC02Ccb7gi0\nuX9LmAxCq2dJquAokFUpCqx+0szngRd//7dK8dStsT02HrTsglK7G9c1SA4E\nwiEd0FtFWlv+IYL+4NzONm3jSm1OP+1dUcKTf9b8bLvF1uh3f+dABA8h4OK2\nCo2J\r\n=XZO/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFPR2o22kYlv0W8P0Ga8SlkvWFOLqA+cQ9r8RnZG852yAiEAyQNXstbMz6sSlLnzfZvn5dHfCr0oNe3pJiBm5zIt/tY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.b3932f55_1538707882453_0.3587172931893503"},"_hasShrinkwrap":false},"3.3.0-alpha.6e8d8c2f":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.6e8d8c2f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.6e8d8c2f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.6e8d8c2f","@crave/farmblocks-hoc-input":"^4.4.0-alpha.6e8d8c2f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.6e8d8c2f","@crave/farmblocks-theme":"^1.7.0-alpha.6e8d8c2f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.6e8d8c2f","dist":{"shasum":"9c8c5ec871482df0adc86fc63b6935c8938cd590","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.6e8d8c2f.tgz","integrity":"sha512-CtvHKPQEgYTqVBPQOdR3DoKZNwabe9PQb7MifYfcielS9Zg8hj6w7IQTSKF8DiifYcCMW0dSVqG+JoeHpWLtiA==","fileCount":13,"unpackedSize":56010,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHcphRf/lzcxEyKOBBr3PMpM9byoJioMIczO4Xk69bgkAiEA5glPzb1iLtL0aK7SsN0myp9A27eGknDuGLQY3hesju0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.6e8d8c2f_1538722137366_0.39439272848969664"},"_hasShrinkwrap":false},"3.3.0-alpha.7c0bf40a":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.7c0bf40a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.7c0bf40a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.7c0bf40a","@crave/farmblocks-hoc-input":"^4.4.0-alpha.7c0bf40a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.7c0bf40a","@crave/farmblocks-theme":"^1.7.0-alpha.7c0bf40a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.7c0bf40a","dist":{"shasum":"de59944f8cbb3e1387d8141aa7344e876233e5f0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.7c0bf40a.tgz","integrity":"sha512-qL/B60zbraLRkd1HW7z+NlKx0DaeW53TRyK2URFqSKz82cIpAxMYYZpGAHwfKJIjYQsOTMRa4MQVctvl/HJX4w==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbt3eQCRA9TVsSAnZWagAAq3QP/RLU1AI1bha1FJJd20BJ\nAGFLOaXejbcvC8+ZwltamqgBuPhNiosUmr4NUbtcumd3ceEvkJ8JNzCBgOeC\ncEG03TEHspJM1EKOiWk0TWmiWaGLHs/JYNSKt+aO0kxwOjT/dfH+icggWJzX\nRJwvsNnQE0XHyH9i//f48j0CCZS8WMkkTszyYn+TRhM98nT1PkhLlZyTK9mY\nTVwlhfi6P7ttaFPnVDRYMHFU0PEXmsth/pVhf+dSnq8w7rL0aYMMn5ZUTvh5\nVoO6KIiHv9yKRqMN3ksS91WE6JTnkIUEqmtzN/39j9Ov8oO2/iBAho3JVjOA\nBtWC7pDXa6U9pqgdPA8TjW6F1y65MEYZiTux1JOmmmmd9vvbXlNYebdjY/Zo\nW7aHmwjJgIpYaED59vCyMtmQz0+9v8AmltWVBh5j0rOtcrhn8TvOas5ChhVf\nBfphj+UAxtJv1tGtilh/1rRXrkLgrUJxSlDPkH93+PmUg5Ra1vBYN8E+Kbn3\n/YMjtPY0ffRzLUvHSeJKpg6vPS0xLPN0i9Nc4evb1cVgIGZL/ACbbOYnxcZW\nk29D4LFtKSOkWuCE1O6dRmjE7FsO8g4fcOytRJv3YaQR8xcxwmsDHyeLCRO/\nCz94ly8vIPGAi5Q+1W4p9FCgaJGE0pTBfQxK3S7siZeeTlyCL14YHsbDg5xh\nfFAk\r\n=qoys\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEaoVfnaEXnRzPwDKeVrSoxjXUVQa3mob/MaaDDsvS/mAiAHxDwHthWWz4OttzhZcRs5/9C4UGjyPPY/5Fm00HwgpA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.7c0bf40a_1538750351390_0.042471310592726796"},"_hasShrinkwrap":false},"3.3.0-alpha.94c320bb":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.94c320bb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.94c320bb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.94c320bb","@crave/farmblocks-hoc-input":"^4.4.0-alpha.94c320bb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.94c320bb","@crave/farmblocks-theme":"^1.7.0-alpha.94c320bb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.94c320bb","dist":{"shasum":"8fe79541e826bb9a6a2a17a337496988efa1ef02","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.94c320bb.tgz","integrity":"sha512-DSmd24LDZIh6UGtY5+534DkFpia1H24vSHegWX+C3SE7zWqV8smsnzdQ1ZyFRnUDFa4udIUZoEgZRA9mwmcu+Q==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbt3xwCRA9TVsSAnZWagAAOc8P+QATmUTujNriX8duShW0\n5zJqxyq26eOJpgKz3gjh5qTfTfQCQE1K+WVtuTE2iEi30VChnigDThNAO0DN\nZ+oe29J4TeeYGiWHki8QJmxTgzRsi2NhA+xYbDQEO/A4CLFabEQtaBJSXMbH\n3sFqeNkoQYKr8gc5S/eYyT/ZVcqRjJo8mn01Wh/lqNSRnfFV0v3ylT9+ObOR\nD97Ugjr95j+/oiCBvNY8W9xdpo/eSZzoircj3vzn049rt7jiUT3UsKrCJkrt\n3taXTi9uAix/ui+kafp1Ah0BpTgC7cVw8rt4X9Lw5AnHWZnJJo4okwy6dNwa\nQ9kPPmcMFZ4Gm44sx+gSOxVIcAzGEL9DYP0SJu/Bw503zC8vHckW0KMaksmN\nJNfI5wC9e7zHQZD79ewcf7PvYO26hZtueEAX8wHC1n93DpWs33Dad27rCkcC\nc9SfvrX54ENIAGGl6SkDKNnr6DY8Ek35llrV1UiGP8BnLLQNbkUGy+o2Fpcl\nDTr+f9mQMvye5lkNFaSMmyFrzXBzlm/AKjQwxJXjerRVaiEIQpZj6qPI3Qt1\nTBlipSvfPagbAAVm9CsYGpK955tALyxkc+Ag+1mo+Ta9YWMIq8GXuAPquRpC\n3FapBz26/EteCQPOYjW8iyBOJct++8hAbsteQbbkuHMs9awDXM5bvEsbvztL\nipBe\r\n=j/G1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCJX3WQGuFFcDPxJ3ckC3hBp7dxc53NOpelxclzry0BaAIhAIhi2GaDqmkc6/rw4NF2y8ZzYS128cGhrRItXLIAV+kD"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.94c320bb_1538751600303_0.1509825435750567"},"_hasShrinkwrap":false},"3.3.0-alpha.cf41d36c":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.cf41d36c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.cf41d36c","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cf41d36c","@crave/farmblocks-hoc-input":"^4.4.0-alpha.cf41d36c","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.cf41d36c","@crave/farmblocks-theme":"^1.7.0-alpha.cf41d36c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.cf41d36c","dist":{"shasum":"14c975a11b2afe2b464f64d557870e1a2abcc08d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.cf41d36c.tgz","integrity":"sha512-r1mAHjPt8vh9DfsXQi2eUheMoI9WJv+liDasZMDukkAPCHhFa94hN4f18Lx/+d7rMtt7u63rfnklla+84C6EUw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbt5p4CRA9TVsSAnZWagAAzgEQAJImnmmCcjLvr08NIW1+\nStc35HtYkRtq58Fzutw/mYddbd52DoCtNmoIJRxY/GMR4xvC3oQKToVxYc+y\nRo+w2KjOQk4Febquu1jxRRWpu/FhNeSGZDhXVK6GCw3d2HlKQ9kD+a+FwO5M\nj3kxNU1V8+1v86aBpomFdMZGm3qJEX2vuAaZDxMRiP12OmXvtu1EHG0UR5+K\nZWgVk7iKM/KzQ8b9yZu3dC9VdNBlXmEP63QDp2SELVkx9KCbPvUWhKmB6jKN\nmI/3blVO4GuofkNU4W+ULdHkVldsmfG05DM+MvjdJ2KqwuG4xmV0Ag5Rj8df\nwGbgSIM8k1JoSVPjiBQQMVuF6II1v2tDOjG2QAB7qCHPNjCjtRvdLOIUqdN3\nrg5N3fd0D1TNEElNCrkIeVMkcXjAhGJaB5GiHxuBPk9hN9+8PHp4dR74jrLj\ns9EvrO7tq8PfJlCyyBXgUk4hn228OTx+DpQX3e89+D0FPyg34HZ/hrZJp8Sv\n3lhdPdOFTyyvRifHHI3/8iWGDY6zDxIZHGg1yLs7ec8QlEOoOzz/VoVa8XqM\nV/zeZKMjRLnEk0hQRORtkQ46ArQVBM/GP3VCGrYisqaLVpr5kC7lsCzySq/q\nQdC8WpXkUUhV02wArixqMmZG7SJdp0QPmjSwoQMVNcbc7ITCgCUoo04h5LZf\nemxy\r\n=Ylnj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0i3MJuPGoZZhL7ksg6FrQQ8f/bsnSobbCgWVT3gOOZgIhAMt3QZwP4LMrQCz4Lkq2CFBdSa47vt1tIQxScx/fV8Lo"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.cf41d36c_1538759288257_0.7882415584782838"},"_hasShrinkwrap":false},"3.3.0-alpha.ac480af5":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.ac480af5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.ac480af5","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ac480af5","@crave/farmblocks-hoc-input":"^4.4.0-alpha.ac480af5","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ac480af5","@crave/farmblocks-theme":"^1.7.0-alpha.ac480af5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.ac480af5","dist":{"shasum":"5fb98896ddb7f9352e113a735251c5da82e33b7e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.ac480af5.tgz","integrity":"sha512-m3TEKfJmQtd5pQ/SpVdY3ZiTCVH8YRzGNZN5xbclNjBhgbPbEFmJp6VQsRoJGtBvRf1+v8tH+h/TjXSFlwU2IQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbueVxCRA9TVsSAnZWagAAHaIP/3v+vDVjOAaXRFf34unK\n/wiBe5I0k9QDX/9uMS+jfXmd2jzVb04wvv8LM39hcl3SD4fTf5RcExEn2Sr1\nUUiYtN2aG8lVBZDunGbnpugKM9rvrLRCr6UjMuEAz1xKYKA1Pep7HHZTSmbh\nprAo2HpiSUx3iIG7WZasOgzDnSya4MrxRY6I1OqD9YCCpMFO297g4jHh3wjs\nJXQLB8712dvWHIBecVKpxZ5sfNsoHZbCWAyqcQkQQ4kCCLmvtN3BkJHJID4e\nbiCSJ6W/LBBgcoVtqTfR2evJdyhK8/9eqM4d5Rtaw6uHRq6jyzS2p8J8wrIF\ne5SVlj43MKpb/rTcSNOVBkxuHWvTryGQIyiGq/5vkcTIPpC39fgIM16WrX9x\nczRD295XQRVHvWCFbpS2dOwI98sBVOejx8u6vLMrKJQFjNx/Wom6lrwflyTa\nKePOaVqjEykDDzcJ+onPIp6cf4eIKTwdFuj7zAdVrJ0lGZXJ60hDPtz5jaPo\nRVxMhukymLpzQCynsjTGBkIX8sOifS2HLC9tnwilNWKIJfq+bw/B/F/tqElZ\nrabLHIwFd0o/1isPnkhanL6ujrhjKecrdmqm4LrMhb2+l5XdBFx0MweMkaoy\nwfJtBzcITcRvfpAKZjtWmSYhNtoM0/Z+Fb4aGhOYWZ5Eb52CYqcZrTzjJCFe\n5mZA\r\n=WGu0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCywG1GbxNDOXj3Yoys8Vb9TqkDvloRJtSAY1mGCNbn2QIgDvQP24MydXpZ2IVx7j2gkONbik9zOXsnt9A9UChu4Hw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.ac480af5_1538909552190_0.05656509527750053"},"_hasShrinkwrap":false},"3.3.0-alpha.a2e99832":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.a2e99832","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.a2e99832","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a2e99832","@crave/farmblocks-hoc-input":"^4.4.0-alpha.a2e99832","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.a2e99832","@crave/farmblocks-theme":"^1.7.0-alpha.a2e99832","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.a2e99832","dist":{"shasum":"3589be76338bb2aeebb5fc70d7847d34a73a214c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.a2e99832.tgz","integrity":"sha512-K3xBhbLpdDGAK8GEBSgKrf3NCiolzkw2KkM6Hc1+h5O84K37naSyevZlX7llob0WW8O4Oj/fzbdtQHLoF3icdw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbuibtCRA9TVsSAnZWagAAmJAQAI2l6Hm4lrX464vN+FMH\nkT0aO2WQLynPGHqgHejlpNt35cfwhPV57x/TpS7KnMWG53xVVJww4zQTll67\nyUllddJ4StY5Y4LLxrTcnbbtfId85JYG0UYE5g0if/5hO/XceKhX9MNsW4/d\noDMDwSoUWRbSqm4Eke/GYOGldI0BHSSzMNkIsPNx8q03hX8rR13vEMpNAkpP\nnd11rVKKfkEM0jkvva1PXw6ytc73wz7Rok0nkB+Re//toVepT9HLMetiur+a\niISpeLbXPcmafOPzLyPDE0yke0T4oIJyK1cIlfoq9UcrtcKeYEA8ln46xxw4\ns+Gkvv03UJrP/xXNTPddFZppNVa662DUMJk6askAFupKDyEoGGxUsoYa9rwu\nTPP3wzc1mniN1XyFYPUOOsr3RJMI2r6+zrF3VHlRLY/2zK5DIgGua/Fr4qp6\nXHsQffOOztqiWBKzQlQkYYYaHIeebhTn9GjkD3+8OHPiM1QgKmaXfCzkbO7w\nwERFaiKFSYvH+i0URbVIRH5hBHAvbhQDp7U21Phggs7079lpedegqVqg1yWH\n2PanajhhuqAyw9/ZAOX9uOePkskqe96RtTYXVzEoLaXQphHrC53kkX3fyfOz\nwmmtsK+bmovYvbFccz6eJA0OuF3R+JEvvw1bwsXfBoFvuSi+1X9XL0iHAWSR\neZim\r\n=PwCe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCO5Wc4bP8VNbeQafcrmHBKiHH0OSMXJ1xqufPWJWweWQIgDoCJl5g2gKxEFR4JYflhSKt/esw+IR7DyYGSoHXoIh0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.a2e99832_1538926316670_0.7453470367271267"},"_hasShrinkwrap":false},"3.3.0-alpha.285d1383":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.285d1383","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.285d1383","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.285d1383","@crave/farmblocks-hoc-input":"^4.4.0-alpha.285d1383","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.285d1383","@crave/farmblocks-theme":"^1.7.0-alpha.285d1383","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.285d1383","dist":{"shasum":"9c8bb710b1b5c92418dc313487fe69a46e85b3cd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.285d1383.tgz","integrity":"sha512-iVs5paru0LcwDvYnSdfdAS6SCsO7YTyOEA2umu9c31hih8rnKcYfzVlXWoWKnm4BYePgWPkws+4l412Et13L5w==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu2/4CRA9TVsSAnZWagAANfAP/3i0kFypS1DiGKjtyRRK\nC7H5SbUAwzQ6f9KZJX9vb3CRNL5ShkjDPI8KSBqnQzuKYRo46Ojij69RG7ly\nuBQD4sC8rnLfQ6OK84xqqPhC75DfQgPg3GJkx34KIhHko2y09eyadUvHl+OE\nLdzDYpuYuqh4AfOsuR3e8KOtIRDcBS410OClfq+WnyhBkUtLDjLKDi9/sNz/\nMDg7NathkEqbNAjtyZevcigXXzpmJuSJlB0Hgjeb6IWm2mZhnWhwV8LOYoTG\nVmO/apAvF+Yr3uOaaCH/FfXTUER3MFWAtVkt3QMYWTObeTZJ27X+5sLjFcuO\nxKxsRMp2T+Bqmsz/iR/eQWQW5mV+wm0vuBuSxrxBlls/2qv489KvOz7MNm6M\nub0XbYVKXX1JfGRWtN46hugFfv/ejBJSrDH50m65bTQ/2h47qBAuCRAV3Vpj\nDtHJxDRWBlih1YpyoTn7KSRE43/0e8/yD+Vsu6g3bbyE/fOElMqpUEXF4kdj\n5H5r1RL3vFLca2BtbhubjPwR8KCOnh5bPyfsNKrExkECiuZ39oLFWnunXJvR\nSqFcTJTzzzbfA7hMc9q6K9gQ7R+KPeDrJIJSZ0aSGdsJ9KgGclzn+lVsaUaf\njdd8QQyQnMP6sOUa/+LZk7QBjXJUXgA0GAiU0GtLm8y5iRcuV5jtA8nbAU3A\nFxXw\r\n=uEKr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFmy5zBQWEwzfQDh5QKnPEpkYYsWcIdozVYojW5lRM8KAiA3CdhgsBkBUD0drOxh2Y4pae9s2ylkAqKmkpdZ43SZsQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.285d1383_1539010551401_0.17268305368439996"},"_hasShrinkwrap":false},"3.3.0-alpha.dfeb3df4":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.dfeb3df4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.dfeb3df4","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dfeb3df4","@crave/farmblocks-hoc-input":"^4.4.0-alpha.dfeb3df4","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.dfeb3df4","@crave/farmblocks-theme":"^1.7.0-alpha.dfeb3df4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.dfeb3df4","dist":{"shasum":"a606f02781b3416a15c28984cf960df6b77910f1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.dfeb3df4.tgz","integrity":"sha512-WB7+GUhnm5QDvg7HbQipCoYS36wVM/1kvnKUadvutDxrWnKS131mbLz/RkqSjIZ547ZouPfznfpndJL6cA5COA==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu3gjCRA9TVsSAnZWagAAKq0P/22K09jyQMSnmrjAjZrp\nHdoWHy5o4UJEuw4bGuO1JdXQgZbMZirCs0kCdB9brzDTtN45mCHLs6yVnBlq\ncWodJlTvzHki2jCRIbm/VYSm4FUcO/2aa5dtveIO6ER+Jku8RufMXAHyDKD9\nUvIIY6DRzzvukX4nhosou5kgIB+lFNTXZoB0pnwOdFVq90IoNNWtyUIWirrz\nfs2jGl/GTI6OwjeVxOd5o8g+u7UZYqo0KRdOldcIN1MAFEh9K1ni13gLIIl1\nZbP8s+weTvIcOQi6pIxXRuEnlDt2i0tJUcZwCXoNeQHcq7J7x8aha5yyBLpl\nYYHPRxQg1O+cyFJMYWRgh/8NoGcnVPo80lmGc/DzNQAsGG/9e+lEgCiqmMNs\nNypZ/aS+GiFqjOuBKxLmyug/AxavBCQmGLQuxuda3fxUDmPbjkZhT7IamS6U\nmAsLorfhjdO0w9oNgHLi7sFZQJ69Mmq57Y6LRP4o+gsSY+f4A605mlw9ysoO\naypWm8OsPHxKs69jeGbfU2ruFrrYeKFe0fQVmocB+n0znMF8d1lvpLQpmI4K\nqyZi6FyZl0WUQLmG7GZVdUsv4NRClIf75nVwQ78xRUEj/3IJs7VOiEosGOce\nM6XVC3T5sOTpvttdAEaLrC7lJuXnK4NbEpBls+KDA8I+fs82p2BwESk76WnE\nPtQc\r\n=l8gP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSx9JGkLv97pnTwh6zx1Oajx7+/F2FnDuoo1sT4vVXGQIgfVCFbanpM7FXDx4dG+1ViobACqrf28AcPlCpf2eptns="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.dfeb3df4_1539012642647_0.36823515258821793"},"_hasShrinkwrap":false},"3.3.0-alpha.248dc626":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.248dc626","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.248dc626","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.248dc626","@crave/farmblocks-hoc-input":"^4.4.0-alpha.248dc626","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.248dc626","@crave/farmblocks-theme":"^1.7.0-alpha.248dc626","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.248dc626","dist":{"shasum":"52eea262606f5eeea671e311dc8ce6ce749bd054","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.248dc626.tgz","integrity":"sha512-oYgr4+pbev/EAjMsyrd/KYFmrTUvw3bAynQNvTjdIcHfNdm0Fa3tRZBS+y/kJq4uFhjyDo7BkyCm3a0meIz2vw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu4qlCRA9TVsSAnZWagAAvhoP/i21+AyZcqAh9c1HIuX6\nJiMLA6bs6FRXVuZ7NCs2Mtvnywx8cY8MRkIyOE2C53PR0f6qFxOLqSB0D0iE\nIv7I89pwEicFo7V7xL8MzOHdQf97nVCzK6cXWTZgp+NQl4z1igXPsJ0gy9LV\n8QU0ygY0Ubth4+b8+nal1bcTNtjIGDhW3EGI9gOVzUlAkMNiFRuIsimRCdjj\nlFFpULcfvgZ3qkG/CmRXEPTuu14R9aPaMHgfgBFjuoXzDdFtpTJeLxPk1hQf\ntrTgZD7fzQUMm70S+nthEMi3FJe7pil8aAfg5bTxQjgkFbhN1Fqv4hSeuga1\nZhu+wqYXQjxMRQ6bM9vtcxYgUoZ/kPDDTcRxpoJkBldvPJHWymdF2BqqHt3k\nzdKbRI+QLFdHWAzdLhMjiWXAtUuMx2NfGSEPK30UrAWBEJUASFwwnf1TuonC\nHProijcysVBru4B/HRPBv/X+QTep3NRuuSOSDlx/uMySJ+QC/N6lpzRrqUkC\no+8mi00A72F4+70KLoLwx1u0vrelTKOrIRi50Hb9bUKTQuHmszTAYpmGgz7n\neSRhBPfLHH6xE06vfK6TSGtYyb2gu9GTmtKnMFpNS/T72x6Efr2ktPG2wDCj\nKFiuwGmjCLGrGti+GnE98e6oLGxl1ZqSAuF6MXGh8w4kU+uFfd/9JHW91ANS\nKdmv\r\n=m1nH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCUXIcRnOWMQbUPmEmHz9oT/lFsPJtfn9489cqMFuG8wQIhAMe4PRgy115/+KGaNIVfzhJkW7t30pZL4bfeZSm97H+9"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.248dc626_1539017381199_0.9597251106670563"},"_hasShrinkwrap":false},"3.3.0-alpha.feb957a5":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.feb957a5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.feb957a5","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.feb957a5","@crave/farmblocks-hoc-input":"^4.4.0-alpha.feb957a5","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.feb957a5","@crave/farmblocks-theme":"^1.7.0-alpha.feb957a5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.feb957a5","dist":{"shasum":"1e60f097b80a069e072e215707ae6bca87752526","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.feb957a5.tgz","integrity":"sha512-LGn3IXWvHWxCrT65wuzvgj9IFq2/EaBSdP1ze49jfAq7sbNxtQAwkcB9dC4ES5rolluoAELAdeXUhWHxKPgfMA==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu4xuCRA9TVsSAnZWagAABkkP+gKTP4OnRibZwnNwHq/C\nNTw60yNewJj3oODGCdRMRQUfrIUIWVt3geiwA9lZIHO08XnmAMrZ698styCs\nZgNhquLMcNGPsPaOLcxQAaDnTM1dYfvXnr77qBBWwslJe7wm9iMKjodTmsC5\ng23vhyxB/0XZnJsCpW94eYZvFmx9dQpToV+pxV/NQe1EJg+tIZRNjTySx158\neZ0kUw02/lpOpgKpdhklShzj7mNA0w4f2VsGNueCaB0EUu1Z/xdUY9hIOkVJ\nCWb1JzAC3fc7DPJRNjnWzjU2PZaQc8AOCbFcidbSFeMMpHF1726WGmN+hqRt\n6bqYvkZfShWqt1v5EZSxtQ7zcSJpkH3N3MnN9MoMwYB4/Y76yNdG7Oe4XZS/\n9NB+NvLksQCWmwOmSZp1Ut58FCL58JLHoOwXdWEjQjm7eXt39m89dlNOK6AF\neWb4ssOyc9Dfm5C1xPBKHVwufUSDIy8IwvZCFScyHw+6mzbUP5AsiUfRJdbX\n6UL/qmZNFy3ahkO3Z6VizJXa78GyyK5FzvnPMrl17sd0V59W+i0MHQxrMa+m\nj4JDJoDjuqFzVDdP81C8aXVIJqcZm/KfFMYBG2KNVWGE6xXpoL+dIIS8Lmtw\nJkK1ikzr5VjIKhK2esznc6YweKZ9FD2JovLLA57FFR9S6JOij59osotzxImM\no8f+\r\n=Ww/G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC+y7gHeIRdSPa1gbzIM5h/HceK7cMt6BuzKgI5n8OEjgIgGB36sDIcu6V7ZYsr3g00RPj2NybyYQQMDJN+siuh5No="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.feb957a5_1539017837620_0.8101701486934125"},"_hasShrinkwrap":false},"3.3.0-alpha.2efdf146":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.2efdf146","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.2efdf146","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2efdf146","@crave/farmblocks-hoc-input":"^4.4.0-alpha.2efdf146","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2efdf146","@crave/farmblocks-theme":"^1.7.0-alpha.2efdf146","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.2efdf146","dist":{"shasum":"ac671abf7542942e465c8d3c5fe02dbdc5d9cb00","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.2efdf146.tgz","integrity":"sha512-tDI0JhFpKqxPOujhKAfdcDGum5oHPua/ZReuSiihJazVasW47mhXXWCwJeLXDAO5ZQYFCjXLNmCnCFs04fyaGQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu42tCRA9TVsSAnZWagAAe2UP/ieX/OPotQR4aLnBldZi\nu1rLGVEiTBQOXirouEY+iZHDWA+JcyY1O3o9VOQZoGN+fg1Du8a2DN4s5UAH\nEJi8Hl9C5WQgHi/dJeJG8kxYD3ZPXQosspNPzphICQbQNYVXtlNbR6l2tsPg\nGo2rpkR9tkogfFsbHOx1cGFkGbf4A0+fX8oA2qeJ4d0iYLEDRlVJBBIOyVAV\nB2h3r4BAg8A5Z8Hq4OaSoJQx8xxLot7XU9PyFMxJ9hTJVmVrQYHKMu5joYnA\nrRsItzTOaJAc7pMODLyBRq5kdTZceFPUrQxyHauYPwf3s/dhPxV1cXH8ebr+\nxwY7hcoE6Jh5bSDS/ktIGOTG0DylpuABNaeBuhHTCjz8U8eZTbdlqeyFj8IT\nyGM1A+a3GltjsxWzgSMafpvXVDkhrPHdHMVBWQO1oiedtQajaBZOW9784NDr\n6cnbQUU1qakbvJyTJrUJ40iGESZq6EMtS+MgiDymAzXHxsnTAHxwy8t1CXd+\nX0woxHTPwSdKPUGPKPwAOsHQCtGOnk57UeNui6ZyFamO4nMrEHD2OmIWp+aV\nR0MOAoqCWIGCCzMXc/dXDMhldB8giug52fMHgIM4/pPFOu1ITfvX6R2blCX+\nVZU/K8ydfe2Fy74SxqqT/obrq28dCG+p7RBLzJ13eoxCPukoD1v/42U3puKZ\nd09d\r\n=qEzU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBjxljIWfMjORJlfEkgGYfRzHOO9jktOY/GRsi6aiR3VAiB3vppJ77/VqLK4N2xPxpqNjg3Vsz4WEBtACFVI7UBeNg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.2efdf146_1539018156214_0.40940294649630804"},"_hasShrinkwrap":false},"3.3.0-alpha.db1b6d06":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.db1b6d06","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.db1b6d06","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.db1b6d06","@crave/farmblocks-hoc-input":"^4.4.0-alpha.db1b6d06","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.db1b6d06","@crave/farmblocks-theme":"^1.7.0-alpha.db1b6d06","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.db1b6d06","dist":{"shasum":"26602e74023b11f3068f1a1d999b91beb740c365","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.db1b6d06.tgz","integrity":"sha512-1mUuP3dmEGAyhus329c1BCRD0Z0IdmufwylQL/m857SdpV/qsm6gnn3HgKMFajk8D8bPvHTQa9UnEj6RvG2dMg==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu466CRA9TVsSAnZWagAAqE0P/jRDcndYyLzTDvOQx9uP\nk3BGlrEHJsvYaZEN8y8emS/TBC9+C49Hz14XSideDqCy/Lzr92jgCqex8gRs\nr2E4PQ7YU4mOhId+BW6Ar9gfFyhrQeetrQRdg2iCcUBeV6atSqc2tJRDIUNb\nqazsX0ZAAeny9w+AEnSK6tyOo+n/8ylZ6UqwsaoadwJ1GX+mpo5XH8prXSvH\nW4bTRWrL7wGWBe2UNhsNu6UXRUoyyUViafaffKtQav5OAHj5wWSZ31bkZvFD\nmgTI6g/Z5MVPY2Kbz+WclOFLJCGsEPOR/7XO5i20I/8NmiIIT/DTkDFbr2Il\nGCzC2JS2LrTyIl236vEepr5C+eZVwAEQDsKugLo7b2lTgbtBKKvXSZ3GGAV0\nSeOqb7c11qgGeaQ1AsghVsZKvB69CDpXnkNiN4um6ddAYlDSXJFbgTGn5Y8t\nwaNggUbvYyw/k7picnRoBOyv8zsSAnIv7Ksm59u+DfV2W73QQbLkZuLpqsMH\n+9H1BBT88S2XT/RknxBdTGgQmT7LDECWypQL/MVFYVCeO974q2efXmAvqkTr\n9OBsUjg/NjhqcNOzhfZcaxNuD+FBzwB9LuinJDPqfu5oUN0BlFA28ji6flTU\nP1B1D6IecH1h59AR9arYaBNCfMTcm2FlPvqktGp9VPjJL7IHc9HEkDlQe3ki\noXfd\r\n=vgz2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIClIROQjnuB50dvcM048shIByWgMibiuG3KnSji8MT5KAiBiWWWybFffvneBnDOJMeZHd0bRAKbCRES2YM0hZSAPMg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.db1b6d06_1539018426126_0.15904227358510736"},"_hasShrinkwrap":false},"3.3.0-alpha.40875abc":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.40875abc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.40875abc","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.40875abc","@crave/farmblocks-hoc-input":"^4.4.0-alpha.40875abc","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.40875abc","@crave/farmblocks-theme":"^1.7.0-alpha.40875abc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.40875abc","dist":{"shasum":"ede1c1255c3547fa2fae2d486734bee36b9fedc2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.40875abc.tgz","integrity":"sha512-XYymipSKg9Wq/eJgKyLtq6Nkn441z6WoFIk58YviiLiClgmdDaYayWzN+IBXoQUizZrHhH7rgysUXFBkv4eZbw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu4+HCRA9TVsSAnZWagAAhh4P+wfGVoPoGIZlJuhTSpLK\nSrf1MhzwWIW9kDtQGag1PoO43vxEigFSRLHM/9Y5R/Uy3ytM17Ey6sbRhp8x\noVlp2WK7Mvt059UTspDW1SiY38qVbS/gxKHDHOWkoqWGhi/PG61uoWWoZnHX\n8Jpg7kSDnr3D5jMsEya8v/09MoroTiQVgsAb7OgSMIq8rOLIMJp4x74nmGlN\nWVsNZL7kJMXghXKVrJG6ZH6dF0rLSS1wARS0R4vKHfxzrCHEH4PqPtKQT3qz\na8oeUQ0y3kgekswf7ZgvBdU8KTvfG74W9x1PeEaeMZwx20tW3AcOjiEY56th\nwmCUZJpNpeFG3e0CAuvU64KMZIC89R1JmSrPgx7EmpQQlMJ/e+3m+wUl+3WW\nRkC3Insnb6CTsCB9Ava86FCr+F9n+gMse1hAy0CjKLq9SSdnp1aOxxrdm8Pa\n5eU1KMhMk+pwMwN+X1xMNhVZfxBK286BBr9VOWZqlCr3cLxqSfPMcCVsnItY\nFWo3+hsxjR25Kjzx8SmVd018lV1YI7Xm+iidSTtNo56AWPBWjr9WtzcFAhwa\nZdOsS1mKvXIJhWK7yQ2kD9LtAtQocQhFHBqFOu87u6FigN4kHpcliBdMugYP\nbl2CngkwXDF2Buk0pY0/jshiZby2POXDETmOGvl+VWmIuLzM0WIZSm7DAzmJ\nJOHn\r\n=f/e7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBSXH+AHUGOhy5JyGm51iI4G94x4tI6pCcpHrwkGaoN1AiEAryLsULSpn5dIKp8AsEt/JRW2kMCP37rfpwWQ26dnC5I="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.40875abc_1539018630852_0.3323640344879759"},"_hasShrinkwrap":false},"3.3.0-alpha.1e981bb7":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.1e981bb7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.1e981bb7","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1e981bb7","@crave/farmblocks-hoc-input":"^4.4.0-alpha.1e981bb7","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.1e981bb7","@crave/farmblocks-theme":"^1.7.0-alpha.1e981bb7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.1e981bb7","dist":{"shasum":"d458bfd21c43021c13a0dac85833b9b2f135937f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.1e981bb7.tgz","integrity":"sha512-Sm1fWKP1HCGaR/JtPtEy2PXtYyQkcmZR+gJAPQisL/8I55M3YFFlyHGHZTU2K8JemlOwVYiWZsEpe4gGBBb1Zw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu5E0CRA9TVsSAnZWagAAJsoP/jmUMwn45KalFKO3Vzgw\n1EuCuFQmlmzQ+jcanO/cA2D5FuhAP+A2+HoTMaW0BqzCJeNX3eGTSDBPQIeC\nOeWpWDM/vxcF9F1nH1eRbU+RnPZGknK9aiDzKA2oCyF0o+7swhDO0tpnjjh4\n7Aru2mva5xhMXrhHXVj3+z6fDqMFVjanK5F0qH1Lb7sJtHT/vlAeIFMUSdAH\nKw+jk7ahDS49PYMtCq/LxbNz5bnb6ZFNcCHWXcTkuApx4Xda/uihz0MDNsVg\n6stUN1EUEYBsm/sRsySbnbulzbCO1me7Mht1faL08gc3Cc0xOs+G29+mBv+y\nEgLTTgLK/uIuScpRqrtZI9WDD2MlYUq3sB34ihxWTH75M3wWBkUR9bR9But2\nngoY30te0CNGbaqupovLSqQ9Igye+zz3u9PilGhxtak528zPARo833VM0HmC\nKaAdVGEhMh+OVRABUOeKVvCePXvpVbNbSDKcwQ2EuLXp4VirzQBBsf0Q6iHi\nzQc4I9ZQwcDqYoLrE3LIwkfW0CYKWgs1T5bSHsNnH/YR2GkLZLsUq9zEWlp/\n/3X3yqtwZ+PzKz8EhDm2qSTiIDhiR1vu6cI5zIq6W4YVksARFjCFUJuLmT47\nPofp+C3okgjFehfXegEo7t2sZLz7V270NPAI/ROQ/8HUJkgZEHgR00gQXcL2\nTHlK\r\n=WoA8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzhwLntVrlFxoXoXhtMuEhGpsw0SCysKSBjkujiToGVAIhAJN32WIs1ickEtSke9tifuFe8qMCLyQaZEQwSEyMWCnf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.1e981bb7_1539019060155_0.30895092750983455"},"_hasShrinkwrap":false},"3.3.0-alpha.8cd345a2":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.8cd345a2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.8cd345a2","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8cd345a2","@crave/farmblocks-hoc-input":"^4.4.0-alpha.8cd345a2","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.8cd345a2","@crave/farmblocks-theme":"^1.7.0-alpha.8cd345a2","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.8cd345a2","dist":{"shasum":"147ecf54cf6cedd7e2a2e6222e454ce7d9552da3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.8cd345a2.tgz","integrity":"sha512-JTvi8Ty4BivtSgz8+qksSwax3BqgRjXLfxHThxHoZFuBPlTrEGqjfRHt8HpEp81Cc3L62hbZr8W2NlLtY67Cfg==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu5WyCRA9TVsSAnZWagAAhIUP/iVoHT+Y+tnsOTSlbMo5\nRY5M77N9lwv+FmD+Nc9O/kwvc1YOLbeokNSJfgmgljUZJLhfyUsW5xekjpry\na90EwJjNsJF1Uo4bY16ebvrsygml6AF6VH4Nc9H+Gtxa5KSHxaYX7wnMV/9j\n0PnKQRJU0fo57+WzRXXop82cXGwytsGI1xtgyoXWEKHmhbHuMwkvaNG9TdxU\ndUVBaFJtBxMAmu2tcycI7eMvK2Rr968QdmZDi6VbOwvBtg9oC5P6ojftfkIn\nAOr4pGIU4B1bvJz93mPIiyZ1gXpnsaQVwEomQBJX4nnShROqx5ZzKQWRgyvm\n0HbL79mfEf1MMbYtUJlYxlCnSZq9Oz1UAQ4L/h0RjesrC4zhqK9We1XzGXDv\nsBoUq6KcWxtbQVYDdn3OYYxTLytOOq5kYYf2spYAi4ONYOZkCB4aqBaKak2Y\n3L88XCYie/6SFuNjq9Qj3nT0dpSr3qNWpuzGqTx33iUba45TLBelQ2Q8fQIh\nV/DmV0TDtLIJQRrmw8jiRs74QO0bccGeisyG7AIwNSzAN4Ott3ryGIRP9Xc2\nZcmsK6WSJ1bvvHZH4WOnLWd7v5aqUfO13vvpWbYJUdFLQdIl1uA0i9IJTBef\no9F1TCTwmC1r1fIAeBdsFXZhok7fCAEbTM9vYICL4YcVAc/1NVl3qqg4sB7H\nItU1\r\n=ooRy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFVualLkkAzgli2bz9IiPT3WyITzduG89v9s+/uXTCFCAiEAvZ3KNtcHYmKR5pnDdb2jGYJcAqtY+JgPNZxd8I8QVA8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.8cd345a2_1539020209565_0.5958436801302969"},"_hasShrinkwrap":false},"3.3.0-alpha.1142b206":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.1142b206","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.1142b206","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1142b206","@crave/farmblocks-hoc-input":"^4.4.0-alpha.1142b206","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.1142b206","@crave/farmblocks-theme":"^1.7.0-alpha.1142b206","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.1142b206","dist":{"shasum":"50c0761d482a626a78b7b3b07f89b6d857140b49","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.1142b206.tgz","integrity":"sha512-boUOroCbB2U/k4qX18S75kViSI1HP3xXZVYYCzMxReyuh0Bd4mrrOcaAiPfl3cMhQoBZuyAF9wA1E72h20WE1A==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu5aJCRA9TVsSAnZWagAASrAP/RB8xDf+sMlx7sJlXz/d\n3Yv/kI9jtHcnNhfLoMp+JvnAVQWhAFFJHSuqsefGPQcZxXQi/YEfU6m/rUAr\ncH66dvwLrH9xCBWRBWi3RcnElHesJjEHWZkIQ68plZr32253whdeyf4bkjdS\nL4ujqgOP6AU0CaTr1bWcrKya4FRev6D9BwvCt+N0Kqctj9VOsbIjLlhTBwOq\n2RwzQwEWfkX4s8ZJFlj8ONJHr9YooPtDpzW3l6pWnPQ6z9zHt7B/6hT6gwpT\nNTkaTbDnX4aWw2M8AHftkydPUEF9SV6cProtlz8IXQPHRf+DIHp+EGM/EmNM\n32/Y2YLgD5rfelzibxaaS0wzHzGCCNfKnlLbpi8rKoYk41O3kPfYGy+paXrz\nXHAXaZiCjJbb24T+bTworA5nr7Q9UbXBPN8C/jSR/wOHlxU0Ao2vZirmzWV5\nVuN2tynfVzXPmwwP/DdsGKgquZC8Rin/+Ysg2K+ymqh/yru1HWK5ikkBya1y\nHumOl/ThPAFceRyfs5OIjzT40OfFhrSzWOMPldHe9I0/SAX4JRnxwUNkhhtU\nUT+Vqn4CWcFj1t566Y3SUeK3RKf/ujlTWhLVr9RHdh3uJlr3E/8wi2mZSccR\nzr0PrcbZZBANvcsOLEl3CEAsRTD9Zpml7u5PqsC1Vx4SImzXTcc2pDh/NHlM\nbuaS\r\n=J8la\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCihsV8Wvu7Xp6Gsew2o1Ta0qzHeW0kffXwLp+tCgpqLwIhALSAQKSLyCFyTiEs+v9gbRDox3E/puJpb7y5bDvrsG2P"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.1142b206_1539020425094_0.11945514657971512"},"_hasShrinkwrap":false},"3.3.0-alpha.62697e02":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.62697e02","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.62697e02","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.62697e02","@crave/farmblocks-hoc-input":"^4.4.0-alpha.62697e02","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.62697e02","@crave/farmblocks-theme":"^1.7.0-alpha.62697e02","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.62697e02","dist":{"shasum":"3e6e332d85e3ccff71afe903f4e3a68f159f98c3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.62697e02.tgz","integrity":"sha512-C+ucdd/y1TNM7NwvmmGwmSf1eFOAu/XVJKnTzVGM/fw7RmUtS4Fk0phCpyPPQace7eoD8NEU/Gixkl5WlrvL1Q==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu5gdCRA9TVsSAnZWagAAJpkP/R/Fq7GXLOOaVK+2eNtX\n47agdcebRuO2KauAC0kKBs53hbUXujvmuCYDKxpOdt9pmkqyWbmtlq7tKvhR\ncv2LdccfAKEWJEaExsU2XSTvGXYKBHICSxqaByMg1wiGRKadEluHhmv2D7B1\nYjhNBxR+2TTUJ7rdEZypkmi1LrQc9a4yLdyXvbdbAbG3vx4wgHbXMZtprlFT\nKeTLuCY/cpq2Yg+woL7SqtbTvdlcNoIKwFX6ImxzArY9v74DiOhLTRUDfbLM\nuI9r+GPzuGFhUOy/iIYm7VuuoopNXufrNk9W5VNJ7sgJIVPkelYK7R9aCXKh\n615Vj+28mXtDHWvuefWnY33a6r1rRm+lktyOwARcaiJyhJ5lyw0tAgzg5rQu\nknOFWVwx4653EeGLOT8DFmq+R3ERSKewZvIfR+Ohzt1/BIZNDNdzX1AnMsZJ\npohc6cpoTvr3TzHgDm0BswV/EjLgkmUosanWd/d2iaoQyf6Cb5gawdLc3dim\ndOYjmwI2eaAD6xZQwhSkV9LO/iKmENqsvRK5osermLO38YS+yOil8yxTMW4g\nUG8dAZAIMSZUmWaoVGlhsLoGfWAiVFJ/S415f3Ts+yCTA+90WJSzp+mhzwD1\n2L+smceTo1BQOucBuayeMOQEdJWHAXg+AxzuAvEf6jzD1kwrPhnGFU+mEqcg\n8sI/\r\n=pTvW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDWWrHYxbb5DRAetZT3qbroooeEBKPi4s0DX0G054xAOgIhAJWzucgv9yVhSnrbIY0XZUb3ZMYQyw0M9ZuQ89VehF+b"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.62697e02_1539020828551_0.6733163342549326"},"_hasShrinkwrap":false},"3.3.0-alpha.a0d35708":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.a0d35708","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.a0d35708","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a0d35708","@crave/farmblocks-hoc-input":"^4.4.0-alpha.a0d35708","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.a0d35708","@crave/farmblocks-theme":"^1.7.0-alpha.a0d35708","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.a0d35708","dist":{"shasum":"8c7a7899560ff520a47978b72b4260e201a8f09b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.a0d35708.tgz","integrity":"sha512-UOXwDBW1WsT91XXbJB/1Pn4woOVtVQl4wYVZnMwA6BFd1KeN4yxv2QgjNU2T3FlzP9RV355L+WNwX9PmPVLfbQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbvOvPCRA9TVsSAnZWagAAzT8P/jaNSdKbAAZlB6+rDVDi\nap2FTFX1tw4wCZf3lIL2D18tYQKYWiDClYclfyg3GC0o+6O43j1ybBnJYJl+\n8aZYa1bW3/MywAw+H7ZV7ll9JabxsGumasztwiQu+X1OAFjCbCHQPrx8wvzd\nd5OEDDh7sqBerMTwEeEi+erj+yYdckWa3DwedNsH8jEwifZ0s7ik3PiiiR9b\nTxG5m8RYazfmDsEdNxkyUwKIFYEkp4RkzejJX7Bt9AqfBNvK6enkj76e1rfk\nHQRYo8ExZSj8sKG+wUKeebz6tKRY2fx4iVTS0dTmKU5Cfo5BqIZDRZ+CjZwW\nq+Hee+LwZ8hlsP6OTqbrdPSOeJXgF1Hon5xULHJ0UM96DEK7RDIWTB2nuArL\npceTM3IjRB8xEj0ZuFBDXgutj+6LqFN2oxnIhI7XYjtGGvU3vqd0W/cXsugf\nN+n2daKBvgaowma3rFjuFcs2/CJ/0Dv574iyTeA8mWPq/BHUYcJsgMapB2/N\nRWLF/tlwyLtGN6FMgjYpGlX/Tf2A48v9RMTmHvjJCbiAA2o8azt14AwDPMBK\nU+fl86pkhjgP37Sc5TyxkpLBBQDGWwaZ777ObYpEG3Mk+3rUW/M3wsa/Lblp\nsJKahgOl4QV8RsW+eCrNw1YLDHOu+qRPz1WAZ7OV38AtCo35GaqId5q2JJhY\nu5GN\r\n=Lh5s\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEvUiMmiiDF35PjXvfrb8m6OHv+X1m40sNcsCRzSjnxwIhANHWjVqEtlPPQR1+pMp2SP1FA0yGB18wJYXFG1BcMkVc"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.a0d35708_1539107791138_0.5182132100153265"},"_hasShrinkwrap":false},"3.3.0-alpha.76a2b9de":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.76a2b9de","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.76a2b9de","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.76a2b9de","@crave/farmblocks-hoc-input":"^4.4.0-alpha.76a2b9de","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.76a2b9de","@crave/farmblocks-theme":"^1.7.0-alpha.76a2b9de","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.76a2b9de","dist":{"shasum":"9ecf628ff129de5d4ce7743ee33cc285426decfa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.76a2b9de.tgz","integrity":"sha512-McxzCHzXKfe7BjdozTvmkunlt8vIRIGQamz8QbSi31nRVuD+VZMqJkG6lc3//us1OqXLOuT4dqY7lmFZ8YO8xg==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbvRoSCRA9TVsSAnZWagAAC5MP/i/N8Y2kQ1lmyEEYauWN\n+LuFw8cMtFv8spKXNslDzB0XViHwYhfcFdz+1k0mqz3mvuLYOyT7Gwe1lvOP\n50291o1WJpU+OFNYMWlBNDRXQa1T1e8WFfkhmy5OVK2480CmCAH5Sd2i+FjQ\n8za+ElyAkl4s28wgzXq996N5LXVPFFZbaZ8Ai8XOweCrgn4goSVeF9wBcrvP\n/CPQBpfvaWLTk4u9ZVijIn9L9GR1p6UcvdYllKDTOgZtmyFE54gmsJ9RLMHS\nv/Ijr+kkSIP2ZvfT9Zw6ICbrp/9s1c6LM7wpcvg76HwLMzahkcpCiGwWk7xL\n4BiaFzTIQ1f2aP3Z5KHvE4hafI+VdvJXOsseUQaNMEi9aoMkLp0pQ+g0lqZX\nmeopyg4xeTKv1KVE1mI4RZ7BlPoVqK8Cb58Ejf8Ks6W2Oujp2pEVcFK9UeMp\nmF8lo0d9pyUffKrfz43l4N4R+8u1imQS829aJw4DZNYbfWxSWrxI9GCmDoKz\n48ieGjvfmvlPfbNyTK8DJs7CO6vtDUiZJ2K0UDMgPeTl7q77ls4kP3in2rnX\n3akDfawLU0Gu35T5SsoKZMm/ZV7taTFKq67ymMW94xub6si1yQlZo/GIorxu\nHWNjXRHPXNvMK3GD4qogaCyFNsmTn3UoFiBuRtJ9iB5C9MWObe+9N/yxQIMP\nGEeo\r\n=Rqn5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwem6LDgzYcB2bfWvs0r5x5eTvyYwZJKrmaWf1ytcRHAIhAPrvq4gwVaA0+9iedeJSzPWu8Kpt9E+Pgrz3YbC1scVT"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.76a2b9de_1539119633960_0.8965610372174904"},"_hasShrinkwrap":false},"3.3.0-alpha.d54af94d":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.d54af94d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.d54af94d","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.d54af94d","@crave/farmblocks-hoc-input":"^4.4.0-alpha.d54af94d","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.d54af94d","@crave/farmblocks-theme":"^1.7.0-alpha.d54af94d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.d54af94d","dist":{"shasum":"004dd1c47769a99de2643c3aaf89ebd272166c75","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.d54af94d.tgz","integrity":"sha512-MhoKXd+5Lgwec/oy1pBpuOp7irPAeTP4VTiINKzjazXmtfgIW3+WR++hT7EPJOfjmxjsY61hn/CHHbHSNu/IZA==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbvk6/CRA9TVsSAnZWagAALXEQAKKmhE1CK91cxbhDMd2m\nDi4hElrCWNJW31bC0xP3z4bRMBGrYB1N0QNzrE7JaI/F+6XUH01KAFs47Tm9\nd0kj9B3o5lMX64EMY1KerGdt8j5jLV76QDgKUQXoejGjMEVr/A/ZFNkKgy1V\nm+W302Fk2f15G3MZ0/a2LfZxsXvACqsUWiB2/svWO0LheoFYpskWf9fyL5FN\n6nW5imVPRJ+LSvHcHdXSfcoPVr2nmI18WW4/WOgr3xmacHtC5ev9GQS1q7na\nIvswmErtbF+RfEMOwh369rKaNzYN3QdunbKzhSBWsxGTYIn8ucT+bzgcrA7K\nwW5qpTs3Bd0HbBozZrhXCdLfk+ZzhZZRITeBIFrTTkn58S7PRXQWVS5gGt05\nPq5/GvnxhQ7ASMfexLS7J+vgLF1cAUNxRYP5XZXs+WLNMZFu1KRS725zff8o\npGwTMDb/rGzB91nhO3HBthcRVp6A6f/gVTT6ND/mnLnp+yKH0hpYChce8ysv\nM9pNxyDtd9vdnil0J2qtqW88qN/+70w5vfjqUcV9ulxr2yAzXWOwj6LHIdNx\nlmhj0Bs9DaCQhMrpitLpmyTUFrjVAD8OUnudLZUsN5TNFHSM6fv5Hl0j23Gu\ndHqQzOzIObzgEpJiYaLMEKsGrMOHeSnN7QsT3XOp8Uc4CPI/GytgeNcbJ6ii\nWP0b\r\n=qDLU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFCx2fLrf+jmR9ThIlD3E+75W83znQlmeRVrz9NGS1OAIgc1X5SF9eZOTYqMRg+KFDWDR/H3vxpraT0EggW28T5lE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.d54af94d_1539198654813_0.17085176529514468"},"_hasShrinkwrap":false},"3.3.0-alpha.4d72ad40":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.4d72ad40","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.4d72ad40","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4d72ad40","@crave/farmblocks-hoc-input":"^4.4.0-alpha.4d72ad40","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.4d72ad40","@crave/farmblocks-theme":"^1.7.0-alpha.4d72ad40","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.4d72ad40","dist":{"shasum":"9d7ad9b0e1ed9dadbd4a9b273eec5adee549f1ec","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.4d72ad40.tgz","integrity":"sha512-bwL38ZZIFXN+RxQ6tbvha+sb8l5GaUMuyNdfwBBFjTSimfWALxxmNgtU62oJgZtq+rY4rUCSXRuv2hzwcOiJ7w==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbvyGHCRA9TVsSAnZWagAALyoP/j/PbEVMB8iDOzEA8ZeP\nzl3NIszKin9xOrfzRjT6u1ES93zF/Upc776U65eUy66stF0oLCDj44C1fL6g\n5/7lcVpfyWVtXnUQj8nn0NvVAso7q33QVLSb6lMJnY7rXUr6aPJRqaPO79hk\n4WmNdW1siUVpQIaIdcHK2j0U6v/srz16mbs8YRcWufETbYpmMaPukqSAUjx3\n0PI4xnNI/oVuVTn5o8l2eErNGZcM35QUXM+5chOKachWEj+NcrdgGz9XCy4q\nAWDplAcXukYKcqXnPb6rzKEfcW3MswiJanhIneVxrmNRNz5L7Lu9jmrGPaZ0\nDJWCRzFJ7dcemo70RaBURe8ebodK2Bw1ycAymm3L/EOyJLn+UBRlPpCjOsLZ\nQpFfL/yMLwn6/oJpsl8IjSsQqZOldeBPdl9CHeohy1my0iHdgVUS/GbqDq2b\nzvpYd2L14Ya6JsZhTbqoXl0SPb3XDNpq+Fl6rXkYuqYt+nyViQkWFbjCWtHQ\nBA47abF8TT9jRCtCW3NVTROvoO2WhYkhgIWgnfxUHqsEIqYxHOrpsKTPTeI9\ngJD1WnaRxgeCDtePLR0fPp1ckVQyZftSNyZOGWF3tSxhsZc7BBUyNoQ0tYhX\ncBeOyOwrpX0F0QI0XCk7IDGT1a+3vqn5I86mdkTvzVEw2TEFMv/t6A+/ZMCa\nGObA\r\n=O7LF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOeepBY/m9yTQ2AyJOCjOMwPwmbkYKS2yjFfSuo4osWQIhAIi3DmGx7KXzCTk70whzfz9yN0deBh7bM33SA/nUNBWf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.4d72ad40_1539252615217_0.30229103291725523"},"_hasShrinkwrap":false},"3.3.0-alpha.701dce11":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.701dce11","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.701dce11","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.701dce11","@crave/farmblocks-hoc-input":"^4.4.0-alpha.701dce11","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.701dce11","@crave/farmblocks-theme":"^1.7.0-alpha.701dce11","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.701dce11","dist":{"shasum":"7e751f83531da66a46ba6daa03a103d06339e56a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.701dce11.tgz","integrity":"sha512-eoQCaQvLmkSewXJQTYgQmPRycsZEb8fJdIqGE0aLxQl/krMj5l14l7uqfIjKXJxQ/M+tNwJNCBCiBQyeX1f2Vg==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbv2UeCRA9TVsSAnZWagAAHqkQAJswqBMPSq1cMeYN9t5y\nxLTdDmhYfQ0TcU2c4seZTQTFRexQ1rutDVvCg83Kf3st6j4AL7RaDPi8djJx\nez3ViY+8S+Ns86mTp2pNudCXVEUODsuOK1XvFOB7jXFkttm21PY50KOb68Pc\nudMXrDIkvqfM+D4ct7xVmy7ex47qAS222FREcc9wq/r74eR1FO1xSt/sQqA1\nhhNsskH1jknSGaXV+eJGh0Ue44QMMYsBdsJmynYt0HcfDWIwaNiY6XQCsIkE\nNGHB6y+aEWkTjv9fGbIHOheO1DwCREKJ6EZASJyutKuoJM/+xJsmeyZk/nQq\nUQUMDixJ6UB8/6VXtiIf3edDcsVUsYFl5N6DCWm46tvm7zxoHzvmuDwKTMT+\nk9N+hnB9RGyTnoZoIlToWEAtPn64cECbkqAIWLL0CVUVWD0Ix0tF9VZeeqAT\nyuqhN4hVVrrqN/G0mDQbq8DY6BhXzoIp81Q5Ry/KnYOfPDbT0up8PdNhqF/I\nRU20gBaN9Wt+0roB12mu4r5RRDji5xvdgreyPVRcKXAQghyYqppZkfxOgURi\nu8HIV7SX4sRSciDk+7cX95mmwh04zFmk2C8WV2pK3OrGB2c5gAv+/y9EfPdL\nYaaNXst4xkrmpS11qDfm1YVWi2oP4tQPZli66FITk71e02PlgBviextPFnLX\nkweH\r\n=qzdE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFsrocwuFEnGrTIMQjUYlNMQFFrIKAAfUmzt9HMzoFWzAiB739Z0m+pKuNPgDl7yhqa96B0gBDy0AMKGSoRrm+DSMQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.701dce11_1539269917152_0.9790443229997599"},"_hasShrinkwrap":false},"3.3.0-alpha.cc2cda3f":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.cc2cda3f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.cc2cda3f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.cc2cda3f","@crave/farmblocks-hoc-input":"^4.4.0-alpha.cc2cda3f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.cc2cda3f","@crave/farmblocks-theme":"^1.7.0-alpha.cc2cda3f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.cc2cda3f","dist":{"shasum":"55bf5e89c4dedc2edb1122d1983ecbdd9d5aa279","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.cc2cda3f.tgz","integrity":"sha512-mwXcWWUloURl1d/X51MTOX1kuZ9gsvnQi+DkvzQCTgVVAwa2U9BmwTm8I6KP1X6JfDVNlTWjxmP0MgoA86++Rw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbv3HbCRA9TVsSAnZWagAAVbgP+wfetH6V673nmREd7usq\nYkGg8HMOcpjc7ZYZKsh5cfVe0yeXaR4i1jwvXqccvrJ0vc6Ggrzp+S7kwyjO\n56QyQHSqyJ6pn/DYW71heK3rFAxlwfCqnsvTM5u1ydnv306tc8s3A5n91rPy\nO76KtfbogYVriuVjHsOH5oAokX4f9p0i2mp8SDjYnAwbwW1bpQHAfyp1VHs3\nMAIgf5Rc0tGkjukqZpxt0vUESi/7JbzZ0qdsGqJdkKvIivpBfjyvRQ3Dsp4j\nUYTJvoga26FNKl3dwAF4582lUpyhgllJQbbDoEoSHjH0XxH26mR3mYblE+EH\nIxjw4/l60czGORkVde/rjR+8Nk9/5WcbICBQknpXkSkEiiyqnCNmWi/gdvuW\noh3GNnBVDuwEz2tyWHpkZyMWdwfqhT/GS6uEJKD91sT+1/KipLJHGqAH3VDu\nXNzxtE40dCtT4CqSnQK3rGfNYFyHvYa0ShQ+V7cfsb0BEZiefHCZdeyi1K4e\nXCplEsuMZG+TW5rIsN+0pnQLAByBeUhnZ7QNd5ZUSAUSDfgZi57LbmTz/QCd\n/BDMsBvS60hsq0zGbFpnfv4yS/2fL6zlpj44CKw/HLYIJZXo4Mv7laD/9V60\nsg3hOPVN8lfdIzGLh7vKyLy+edK5Jxn9lx1wcS8cHEuzLsj6ilmXJk/JIGom\no3Jd\r\n=ONmK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzICnhlxzKnHj8oJgsuRS5HZnjipAcHlRPrz6p+BK+bgIgMfEMfclq/zY7EpQCUvWCE9taTHljKvNMPGdz8KN4c+o="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.cc2cda3f_1539273178425_0.8606984869789058"},"_hasShrinkwrap":false},"3.3.0-alpha.2049ff74":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.2049ff74","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.2049ff74","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2049ff74","@crave/farmblocks-hoc-input":"^4.4.0-alpha.2049ff74","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2049ff74","@crave/farmblocks-theme":"^1.7.0-alpha.2049ff74","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.2049ff74","dist":{"shasum":"80202e166e2bb6f6ec46f8180876cb0d9f97eb8b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.2049ff74.tgz","integrity":"sha512-mAvB4Wz7/C+eoo+PAE/dVWypVyDqpO+MevPgNZzvX/0ABqOSwSjQQwuVC2ZtD1Kpl8N1PCpk9YLnX7KUSToLGw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbv3kXCRA9TVsSAnZWagAAEUYP/0rMLJahtv/DT6wS95y8\n5VnKML5AWhxxRTZQiSucJMTwsSOGsjcpCZvtfZHManWQ565Rm2Q8NrBtJAyH\nG+ynIFwSO5JqVes7MfIrCnjk0XVSGwnTS436QaqMnA6rxOXzDdtZcAXWsigx\nJ8ZrLYe+/vPh3xnv0GVbyV4IFkJNPA/SW1yrV0+e5p8Q7g819A0FGcuRVqL2\nbKosDeoUfaZulr8YUM6SvJG7SNbEs4hTPlXuS9aBMMGcHqOnWApwo4VV4dUo\nGFqTumdz/u71XQxR1Z7W18+tnF1RmwrUahDALJxyqElvRSHGRzmds1aP5VKg\nMqqB6/l2XVRgvHyGxkGKQg8f1Q9ejMmliYVE0ibce3wP0aofBX3MEV3b/Uh9\n9gNdk4HiuP/QSGoWVHZFIKMlT6jw5gIZtugOKahOzze7oqYJtkziVP6EGMxh\n/VVQ/mM1JzXczh98twJkGo+6Sh/DmgVKNAgYN1PjePygoTKKecSVzf2j/MhG\nIJBknBQZdtwpV9riMczg4TT2VE0pWzR1ET5Y1fBY5gUlsqK0gOTfVmArv9QQ\nKX8l45XuLTdA2jIWiL7yE3SiYpwzPlG49Uks4gjSlN6FexOuFG6K4hj5fBL3\nk6I/ZAFpd+xRcsmqaJeaPvdRDxnXKBVtyUM8Vs8LegzDedJk2KCnN5vZSrFL\nBqDN\r\n=NAjq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvVxUIkHUZAGznctYrFQjXj1ZbiicYWBCHtfp6uiQFVgIhAOabK7EyIube6Jn0DvEAMQnQr5N7n6YWCSecLa3JI8e0"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.2049ff74_1539275030660_0.07752365908371894"},"_hasShrinkwrap":false},"3.3.0-alpha.b7ce398a":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.b7ce398a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.b7ce398a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b7ce398a","@crave/farmblocks-hoc-input":"^4.4.0-alpha.b7ce398a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.b7ce398a","@crave/farmblocks-theme":"^1.7.0-alpha.b7ce398a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.b7ce398a","dist":{"shasum":"34028d6d6452f2e5d066e28993e0a0bc90daa504","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.b7ce398a.tgz","integrity":"sha512-VVO2LeiHZj0M2ZkgzolntkxP3yTKT7YEh4+qGUx3t0lv/oV0X5hDrho2HsN4x7MF6Rcj74MzHIxJOsxu47KRig==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbv5KpCRA9TVsSAnZWagAAVw4P/1CkT+r2Bbfa+qCZuVpD\nLbPhTQqKGDsI9uNgCHUnZ6cLhjdkmy5M4siHuS2PV/XjQhg99s3EhT4gmfKM\nVKgaNUy20SbvkmAv49fJgu5gmVWFrR1KbpRbUlvhNNfCnNXKu793A1cjfikD\nveKbSPw1pS09Jz0haHz75Q1By0zpADV3SFyd1VQ/Q/AOamU/rZJzR2PUgF7T\nnXt+CDlSXLSZMnliGxw0ADV3x2KipIs3661JKipzcoz5NVn5N/7BlYk9Bjfb\n0q2+KfbJqSD1/a4puJtZMM7n8IDZXAJ6eDRYGwQ3Fui71LpaVWJQANqF7aV+\nOA9FvBe3EXCzFPYnXUPgi6wjKT8aTquMLRs9SACfoR/WNZF3OpZCGpUFm4DO\nEOaEkjZZXTt9lWZf6bMor/5oFxnTT/XpzPLlil6UNyomabGAB3adoSuVw25Z\n6wQg+57ft3gyyiK3ATAQ2uxqksVdqwhwW48IMR/UoRhUcgG9BoG2ZeaRouGF\nBwZLLzGSHrA8gOKMkpDPS6huyIIDQWhwv4XeA7+6KFy9DNMMBt88Zg6YWwcI\nZ+3K76wKbalTAfVk788mdWCtpyiDl8RULTGfHYuItCPWArPKEti3z2UlWii8\npmSHewGyo9UTLxCUCvfw8vkMaGCjGsPaDIj0lChHPixcx39QtXRNba7DUQ2J\n1epR\r\n=R4Nr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrZWIOaHXvxG3rqVJp8Ue4xWGqO75pKaWiGb76wkmiBAIhAO8LPyMq42U4cGFjCqn2nmMV6KI/ipiS50pPx4ijFalU"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.b7ce398a_1539281576541_0.7478132108027622"},"_hasShrinkwrap":false},"3.3.0-alpha.2c14db15":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.2c14db15","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.2c14db15","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.2c14db15","@crave/farmblocks-hoc-input":"^4.4.0-alpha.2c14db15","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.2c14db15","@crave/farmblocks-theme":"^1.7.0-alpha.2c14db15","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.2c14db15","dist":{"shasum":"3e7d3284f272b1c7f307b59c98f93e8d2508f6ee","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.2c14db15.tgz","integrity":"sha512-b3WU7FvUOAd+NUI7AnHmu3U0GPDlNSF7MCsNc8FD2oGjyzc5HkNWT/0guUqeHVDIVV3drT2UXoEwWueKnC6BDw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbv5WiCRA9TVsSAnZWagAASDUQAJuVENL7KCIDNbspcbcS\nuC5nTon/hoPmYw2BPoHFa8LWExC89SFgEJjJk3v7j1SpqiXIe68kycNYvQS0\nIaUdqboRumUPYSDbcWVL+Y/FrtVIklhdNSodJV5pqN73ClxUK8TlyySiKffu\nM45As7ub4b2NEuViI3FxF/bUg9sEjU3WqqyZROo7lUXIlQM5N9/MGYbAQPrq\nijlIPpm+9yWj0zQ3pOHbXij6tU217R8vcnvs9iGatdtibSnv7zalqoiJ96OE\n8dDShAZRb1DhK1dMtBpDPxneTYpP07f2JJB8VED/tSIRbAY2x6I37aRkwJpW\nuQl4lc8/hh/6P0oOrylz+BjrimQPXz6wSdVdty8Vl9/yq/vPERe6svBY3703\ngLyQktAjYuRqcD0SBe6qFjDxHjwFiTfhhH24NJ9HqZu3/yhr3Lvf3tZGjgRl\n0l9pgi0z59tT+uXZQRQeGSI8/Y2AI61cEDsL0aylEFAcpoyLP6pRBJvfkufa\nu7aglSB5k6aIxcacwQ+jBztRX1Ue1UFsaXbxz7LYGEmPwM8bpnk+wjw5rbU2\nA6A4NBnL0bJvaGf7UvsoqictRQelkEt1lUvoCjy/TlFus/zIriYUuUzQtYtF\nWXcqJOggW5yIfpq0/XI1yD+EwjD9rBbMYuILvwQDIOnwMFtzdKtABU7tFGn+\nuOmg\r\n=bJy3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHhTxuZlkpCk/5SFMw4Y3zvIwkx4Tzz3yGZ6qvtb7n15AiEA2NRAKoFiJxYxTPLME1O1EepWI+avcHP8yQFgmZJMLlA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.2c14db15_1539282337613_0.20254038201083135"},"_hasShrinkwrap":false},"3.3.0-alpha.a7fe141c":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.a7fe141c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.a7fe141c","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.a7fe141c","@crave/farmblocks-hoc-input":"^4.4.0-alpha.a7fe141c","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.a7fe141c","@crave/farmblocks-theme":"^1.7.0-alpha.a7fe141c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.a7fe141c","dist":{"shasum":"b52f4d8fa6fc704e6937d9a187a3b97de0576276","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.a7fe141c.tgz","integrity":"sha512-ij4pbOJxQcVT/NQ8+bIRYtGodXxz82dpTUoaRoXFAOG5rANQwiystDqiqBf1MPPAjIpaDSJA7zmhBxUG15oLoQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbwDdcCRA9TVsSAnZWagAAsJMP/2TxZQCbANvUZ/3VgpfR\noiEby9xsEGRRKSCHHsYbcHLetVPvWLW3hxs6FVhZ+c9GV3rBzp/ervWkBF0J\npq6ZhXtkEWllF9MS6pxnNhL4g21pbGh1WQ08DkrNonoHxFjSjpIdJGNNzmF5\nLxU/a676fuKPFFwIndGZmBiSuR7dnoThXgHmexrByJOIuRprDwQTcm7j/ni8\nQLUrIkoZpS+R212GHvvcy8oW7P4Z4w1ZG2/VlbMn6x7EYBCsf9VYwmcYOPib\ndVVEC2t6g4NkhmYnzzOB2o4yVd9Oihsa/eRkXmR/pKe4DUFk8vhpuLi4eVG3\n8phj1kenRzhwzg0Zx2Y3PykmXHjpC7LHODisbhYq5pi6JPEpv99kvitg92v8\nsi+1HB2WJ1kKlTZDSjWd5fkNZ2UpmMpqzApcDMKQyHxp3TRlY5REk8Q8EuQn\nx3kQXWDACpNpp3DSGS7MPArxDEHgKECRdZp9TPAr19RyywB9mGrEgHabpx6Q\n3fAUrIIfiUtDHIWqi7rWKSzC9aukgspX2uLP/CdDeOgdblfDnr2JgPdyB+va\nZLimBxaDq8ZFkOkMCpqKA0bm1ed5F08Yjq0QC9gWXrY6HWUtn6rAgIxwrSdE\nc9Zoz2InSxgWm6pnTrRAS4jBB/QNpD9SdG7x/9uNRs7ZjpzEQbGdGX1FnUuw\noGXu\r\n=fvme\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDySnUAtJkT7jb1jDzMYPvJVaymHmd5q3POkz6ztNKCkgIgUVdHCcGRzbx/eyr0Bvex61FR6RF569JVKxaCTy7co1I="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.a7fe141c_1539323739648_0.0970096204388482"},"_hasShrinkwrap":false},"3.3.0-alpha.0a17622b":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.0a17622b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.0a17622b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0a17622b","@crave/farmblocks-hoc-input":"^4.4.0-alpha.0a17622b","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.0a17622b","@crave/farmblocks-theme":"^1.7.0-alpha.0a17622b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.0a17622b","dist":{"shasum":"2845a48f02f1b7c41798bf8a18eb5a69b5c5b3bd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.0a17622b.tgz","integrity":"sha512-+7rcQR45DenqX1PH9y5Gd9AsM8M6JEIhjmq8G8EaWJj5svqoP/LIHTEYrWqmhV7Uxi0JkP895plT+9uGHLy0hw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbwyNcCRA9TVsSAnZWagAAQhIP/2YxsoN1FACAaOu6uZWC\nwkyht44amTska7Vb9ktREAvyvpIpJwcCuBPItgZKdYWA9Z09xIaW58R90nIf\n+o0RdvfIT6WganAUh/OsUGw4Y4c08yLskSehaQ8x3gBfoUdecgQMwEJ3iDh9\nnRkCk3R2U/YnFvx7mgiO2oArzYypK/SxCXXIH0AA5ju/Zy8DaU5uAt0k8uWI\ngUlRZ0BwqhdLSXc+uaeHWUsLBHpnRGOI+qJGO67epEW8ZSROFZi0P6uHPLTE\nw6teLusIp70KuS3uLBwr8v1FMcc8DXJhE4OZQjHA0kCmHO37c6Tp6K5l2xmw\nGySwld2yIqAOpVbtKoIEQtx1DvnpJIe6Bigh0QXT7nXCQEbrqJde9Z/tbh5r\nKEGfg9tEpfz2ynbNVqHO2v/FOQSIERbF3ASqeHOhc9cjE9AnYTA+OS+NX0Ye\ntEsfs+I3Eg3vsEiCB1ueNMUZ5fKoMLZJC/qkyxmJah3bRZC8B5HwzBT12ANY\naFPTcJxt3v5E1fvEtFCnzh5YED+y1ar3E1DBPaDzA51UrjFDagNvGXY0155M\n1DQjxMAo8i1mIiP98RQT1qL9ebnPlf8aN+iQDBGoBf+i9o818uNIXaQSuhDU\nQa9mQF1iaRG+NMq/4QC2dCR/dmQmpck3hTZP5zFOK9kDJOuiwIsamhK4/uxT\nbXCI\r\n=p1Ea\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDI0xSbFXIUWMIGx5bP2cCsfRLcXuAyk0si4i2Lakcd3QIgNu8dahHYquIBe8XF/dDgvGZ+5JsfU2Qvw1/46L52tRs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.0a17622b_1539515227835_0.37608782180467437"},"_hasShrinkwrap":false},"3.3.0-alpha.3637f56f":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.3637f56f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.3637f56f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3637f56f","@crave/farmblocks-hoc-input":"^4.4.0-alpha.3637f56f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.3637f56f","@crave/farmblocks-theme":"^1.7.0-alpha.3637f56f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.3637f56f","dist":{"shasum":"a40c2feae8692e5463e4fca67783f5af229a435b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.3637f56f.tgz","integrity":"sha512-Ol9db4U6lJa33Ld06D29cZBdXI1aLr6kPGHUj63cpVeCyXM0Yve35xRtuPurlqKenyYpXnfMIzt4YznxFtH5uA==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbw4jnCRA9TVsSAnZWagAAQewP/0k6OS/Xg7Mmv/Ds+ExE\nAMYIfAXUidJ78oHt4euSzlqYDuF1hs4G/kX92mkSZMeS1H5KrdBtS3k9z4wu\nWHTiZ+zcwLY+E3rNyx0te/70cch9ELm+OPKMtLjId3pMJrvniXoX1eHvYBmr\nY2x10qVdgAHqyc2Cdg59D8IlkggUHeq59ZYK3+QfSeKJNha2jDdNAMNMKEYv\nH6ZrzStOT+WFK2DvIDciHmNrik+yFTR54hhHXyS+qrNo8NJHwX/qxJyg4AqE\n0K8xbqOprHAV2sfBcGBLMYIvOXTmrKaeHdgPEeAeKFl/hr7jJ+VhERwNXetT\n7tatVb1bK6eFkTj8qQlkAiDA0QzE3y85aRRnV94CfxDfO0sTa0Q34VR6nLkz\nwi0ztEs0tqqQ2AMzoZHBfA9LVnId43vtNKi8oyIz6Ql9pUhXjzKC/uA1etGI\n8fbkCofVbh8gHkZvDu1wfOjACd26P+XLN5MR+5DLQFobrDdqqPkRIWsYtGm1\nnb21WdRlWb9qCT+l+k+4h28KOfMImNrTfWsL44X8O/hi1Jpnzm4snfkcVOBk\nKY9z0iRZpOD8UNASHYlWZxlNQXP95aQSLP6YUkXc3KoDbZCF8td5QCyfzQW/\nso+Emcfu4vAh/YBciMMtV3fIcCgIdykDEg6PnpF+nfViWoiWPlPcA285s8xL\nJ/wx\r\n=7+qb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF819AvhYzgiGaCegx7TaXgpc7IvVv0hcQdCOYN227fPAiEAhvskacxJFLOHgZrVSC4tF50OKrm4WNfoZxbwaBWwvhM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.3637f56f_1539541222951_0.7797257522053302"},"_hasShrinkwrap":false},"3.3.0-alpha.4f6e5666":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.4f6e5666","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.4f6e5666","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4f6e5666","@crave/farmblocks-hoc-input":"^4.4.0-alpha.4f6e5666","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.4f6e5666","@crave/farmblocks-theme":"^1.7.0-alpha.4f6e5666","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.4f6e5666","dist":{"shasum":"ef93b662bf8cf755c8ef110cd6fea6189727044d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.4f6e5666.tgz","integrity":"sha512-icWeS4nzpKoby6RwBpBBV+RNqttthUR60B32K23RWHIPCNqTmDuZyT7BvsXOluGl4WN6CSbkWZIQfgpEG72faQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxJLSCRA9TVsSAnZWagAAbsAP/0khQm0JVsJRitQJ2BOj\niF0nLCicrpi60V+kFey4qMq1q04MGMulmgy6v/7DwU9x6AfIRoT2RKB5fIJ8\npOXRClCAyf+kpQt3QBNVIdOeDtn7561eN8c56eN0JYdEkZXYFNh0vXgOzEz0\n6sqP991/sZw7CSG6zmYS/w4GgkRxrJQbye/88WHZRlxaShwWWRW+zupalIzH\nWJwWH2Gko5pGjS2zFqTOtAzpsjl8dxlclCK1BkQWhw5vWqBRuZlIZkveV27K\n63p2yAPYxNQxAMx86N1LetAARlN7cDSI/HQvYTnznzzKhOs7BusGMT1vhDsc\n5V6bnIgPD1q6H751hXXNsHjSbojKRKJmHff40y3wPYb/PFQjUbQqj6ASKPFx\n9rBakeS49qLHCb6xb9MBJzAD1Wdbp61n+IxVMKU9sjRb9T5VCopnSSqdJAyA\nNurSODOtRZtp5uL+6Iyc/zU1/zJND8cAKrJ7hoOEdt43l98OKix+q3wqvvxQ\neznB7xnj8wIsB2he7bWJXQLwoSOn/M+yIlT6mXDCJUqTZa6aGUDOIjxHrIp4\n9GCQKohOPQ2FpsxwYxumWAz0FKGqlSn7W2zYRATzChkSdL+6B+JrFwpPoLQb\nyNW/v5FEtfb6sK4wRR8z4z4aKq4QzqomGFMtufdzWpjes3yi2TTtNMJyRh9L\nkORa\r\n=ZoD5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQxifFhWt0TaOCOzH0MxKioYjNJWiyuPZV5o5S/6DovgIgAILGyPO5H/PCCRWwMIbkPcMeNKed/qM4mW0UnDx8SCo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.4f6e5666_1539609298136_0.9903488809901135"},"_hasShrinkwrap":false},"3.3.0-alpha.bc0bf3f6":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.bc0bf3f6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.bc0bf3f6","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bc0bf3f6","@crave/farmblocks-hoc-input":"^4.4.0-alpha.bc0bf3f6","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.bc0bf3f6","@crave/farmblocks-theme":"^1.7.0-alpha.bc0bf3f6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.bc0bf3f6","dist":{"shasum":"57f1ffb7c460fbe7ae2445603cc0e790ef085aea","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.bc0bf3f6.tgz","integrity":"sha512-jNAT8G5cZrHRfr5Ms74tqPc3/o1CvpC7Z19EwlnfrCve94PmnDmfG+GFYxBscN35OQTYUF7DQB+5BV/1vRSUKg==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxJodCRA9TVsSAnZWagAAOagP/iLGd4DwbvxYJQsU4eKQ\nYobFu8lxGtGI4Oe+6DUp8sRkHZhx8n4ldgWqnSx4g2WyvSxbTwpfx76uswe9\nC+9wtlDCOFt0AfWTRHJ29KE1dl6GyWAFtUqfpW16kenYsI9VJL6HkxJIMqT2\nFymCyFRqNzklI5i8E8bmSwa401h0Hg4ecioUWDK7j/iAsCPiDNExzgXeKv0g\n13xY4u52vdqH+St/YaBtgdG3XncxKk0vKlfqLIxQF2izO1kzrOHNupIvrGiP\nA8P2ohZZlRRDXbRVo2CUh1qj+a2oiBCCn96vopYOu7ZPdorSVrS5Q8P6GYLT\nAw6rz3X8TcQfHzNd1TlvB9BaRGZAcQw3zeUmknhYF9GJpGYcvBpHmeQ3RoZ1\nvawHs3AJmhigOsSyOWLnh/np75yqWRsn3w8NQNd3j9wjVQQlumNApA5isnJ8\n6SpW+gCRdKM3h4+4C3ttDIzDOoEt0+MRC0jdw0xzG4RkYTU43l22khNx0AWB\nismHbLbtMmgxbEQisNan+HLWRuZ3sxCI/MBrpeKn7JwSy8gv5Jyv1FDa0Dym\nurQDiepgCeVQCTI1Kuja9BH8oEErGxEl/+o/XO4F0Dt/iDH/KmSbimR8MUnA\nHvzVhaM/6nsqP4tE+zF6vA97Ka5MxxxE0LQRaJfhaJGVKBGikASa2uRT2YxL\nsKoJ\r\n=TpKx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQHnNrhuaXAHLxPrsAfvjjEfxTR+K/nUORppHL2CMg4AIhANskAM/1jeyOmkGgSUfwd4w6OfXiTu1xlDARPSDwxosq"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.bc0bf3f6_1539611164988_0.9233531144390068"},"_hasShrinkwrap":false},"3.3.0-alpha.629ac030":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.629ac030","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.629ac030","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.629ac030","@crave/farmblocks-hoc-input":"^4.4.0-alpha.629ac030","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.629ac030","@crave/farmblocks-theme":"^1.7.0-alpha.629ac030","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.629ac030","dist":{"shasum":"5fb69390a60b5b1cbcaf83e1f16c86000010e6a7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.629ac030.tgz","integrity":"sha512-hQaaRbo6sFhd7/HuWuZ+oNsFREH3AZgEwrBqEw8ft/Ar9b0xb6AhC59dNySY33BB8AGglKJq/2acoso+QmlDWg==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxNdMCRA9TVsSAnZWagAAaS0QAIyGNC6C/p/NdYUzMMXA\nlTH2A5ueY28R6sInDK9YeamcbVCHbyk8I/zf4OiVX9AyxEVqadClZ3Qm5Khv\nKFYUsjbaTiTvSV1NZvzXmj9eIrXLa9wc75zjStfDRtekKgV7UHEmQZR4plpL\nmSV2vkiNKXgIuG3OFOY73Bz9yxgDxQsRJ3W6mKsgssUikRoDzojStN9XV4hk\nFuOW6zxNpENfUmhcLqNKvMt/Ql8tVG1Obvbt6svSBf43Mjt1uYcTchGj0XtI\nGFjLhp3yG8MQxBYYvR318JvQh7fF71iOkJrvSjMAZPYmaOCmkzCAvcy3V9k8\nlquAn98xpI8AU0bMeqeLZngtbGokhIL+E6M1WmQ85BPuUn8OmKpwLG5rXNic\n7rOXjHLwFgNo+1oMxEpxPi3esgcNADRC+pd530VBA3uGV1y8FQzHFOabCujM\nCElbkh6uvImqZeqo4F6UU5/aq/rSkT2viU+E4fzZxjSXU6jZ5UTdZ4KH+HZf\n6QyZoxsWld9y5xzWVww1REjpMKcmCqxb4VTisWjhg6Pnu07XrRY+j1iB+qnd\nSkxAXulAbACwo8Hdx2RaqZnv6s21rV+Mky+Fw5JtcCZbnuK+SJXWpQOdbwYC\nPle4wuIFSQEo+4+mHXUQI8v6gUdUJiMIOSNn4xRavORdJrHS01wcpBItsNY8\no6WJ\r\n=+rIE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNmzWtazA6/QXFoDcDKRhymI0+3dMErNGQo4z8Hcz5wQIgC3Fvavco7bV9GEzaUGVZbSmun2xQ28sF1BjHpYQaIYU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.629ac030_1539626827357_0.19100434851031567"},"_hasShrinkwrap":false},"3.3.0-alpha.92c2d991":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.92c2d991","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.92c2d991","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.92c2d991","@crave/farmblocks-hoc-input":"^4.4.0-alpha.92c2d991","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.92c2d991","@crave/farmblocks-theme":"^1.7.0-alpha.92c2d991","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.92c2d991","dist":{"shasum":"7316c991c8b2c511694bb8103a720c1403a7d819","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.92c2d991.tgz","integrity":"sha512-/yzsOQampWk4MWAO/NsAT5yCEFxwvorBOwzJt4hW0XidJuNE4lk2lAmdmEjs3vBdzwtn/1As5e/Sywl83eWFmQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxZzCCRA9TVsSAnZWagAAmksP/jo+ZvXDTjDb497ni/ei\nMuzT0huH6RAxIgs0+UNnxl686niM6uCg5VFxIumXdmm3l7C7TBlOfepsoyoC\nQLtnRBmgLNKUFKhYAjHGpy8YCCuFllC6GpzM9kFMbfsmxyZt5PTHZqbiHZFB\nOof25FGIQT+PlXJ54JCKaRl61f3mUwc9ZYeCyhc8P4ofMPweQ05H2q2EvXJF\nBVqFJ2z21KbvBENzd7I1KzaJ20DPb88grMyDl+0aURYvbCLncuABrVl9a548\nA3kGPHsuQnoAuJuayCV9JovnguWsbHQuhlNgXqG7lO8F0g0vaJpgaxoZfTdn\n8pKUB+4w9hpP3IKDTWcdcPN6txoEuWga/b1WuuI/faDi3R4SA7Efqz3EyuPz\nIPdU/JDKFXXR5+ttZ6LXRd+kYCFOa+/qt/LUmLJCW6aeboxIipswtmYK+3rY\nDkZRvFcr0gZX5X2teswE7itxivmwozurOWdf0CZJIpBpjnd1U/0LsBfkS4oW\nb52PF8komudbcBum0KzCLQVOPBzOgKk313q1v2JmUTysQgfs7zmZgZXwLfPy\nKVGMxTys5rewn7DpZUWpdHpUWkjOWis1Fu8fg1d1cCXdqlohSDY1Nasa8IWm\nz/bY+pKjrw0uJOk62rWpR0O0fA5YwzJO9Y+AXmp12rIezEru4fN5mdNije1o\nscqz\r\n=21dk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAEiOqfjD3PVsuGSZG5F70afqwGyC/+Ojej4g4wbFXA/AiEAplf+t+eU0xG6LweBFTzpF3p5D2S1YZHzKJhwyqm6WOY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.92c2d991_1539677378149_0.32794878926911153"},"_hasShrinkwrap":false},"3.3.0-alpha.ee69673e":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.ee69673e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.ee69673e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ee69673e","@crave/farmblocks-hoc-input":"^4.4.0-alpha.ee69673e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ee69673e","@crave/farmblocks-theme":"^1.7.0-alpha.ee69673e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.ee69673e","dist":{"shasum":"bda7b1e2515d4169272a97529e52a457978a8a06","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.ee69673e.tgz","integrity":"sha512-acUCPl7B26MHH4R6Un5PaCF9PkcJAHxANkuYD/BnJJF4BYA/08R3V1qtEBMP6V1xX/gattZCftZyTkK7zN2sKQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxa8rCRA9TVsSAnZWagAAq9wP/0exW1Ofdb49xZ0vhKqB\nexh/+yDMGV4KK7its2caHSM2xM9Hb1u83DYTwsi+afYeV4TFbZt0KeP6+RnX\nEyRcxmii4iWztR2QuCJXjUaPBjquS8+v4brGBiGMuGgJY0OiaNwXA4kB7skG\n+GDuAQ2A8jXb9AQFX6bi88kfCi9G1+EJHrO0W9Ppmd0QnkxIES7ag1gRGR7f\nb/+N8UW2tNBMlhf1TNNOHxBh8eUJ0rg/sClI80Fbn3CsErN/OItz1vrYy7DE\numhgitT2XrfKAVe0QEnVxWul1Q8SPDuXODxL7GRGlPLg+B/4H58nIzyXdUTm\nSYFcIeMHSUoailkCQxK3pU+4f9yaMNjiGJq/CqXDRTJLYY099wgLWXC/fsne\nMGmnxPCwvMd1HUVPX0OoX1XaS+86PYaGonWeo4dRL1Wg4hhTSGR+v98J/Als\nSrpQSu8FH35xuF0BJF5082upvo/cBvG5v0qF1JcSy9/D0i5Zt86aZoIZ50sB\nGYfUkvveh5kv+eN7fjRPzSv0uB4ZzT55VJ5gneweHvXVlVJ0EG6OYOCMjt6D\nBLWo2Mfp0v5Va3xD7GjwE4MfXfDHyfb1d9t+J6Hvrn6IRg3Iem11b1jkmkFI\nNEoE/AkHo5NVgdDtOkxXOdcJ1TCQDld7O2namCBkUwkc6Qnisr+V8j+DHTBc\nvRAt\r\n=Gy5e\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAaSa+3/OfS779tec3fOzPf4oqVDGArZ0Fnyfx8l51JSAiEAlX8FHGl3NyXPw5pS53vfu3eRTOP5W7cgSBgxQAqMMII="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.ee69673e_1539682090291_0.5754046402621262"},"_hasShrinkwrap":false},"3.3.0-alpha.97f5a8ec":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.97f5a8ec","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.97f5a8ec","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.97f5a8ec","@crave/farmblocks-hoc-input":"^4.4.0-alpha.97f5a8ec","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.97f5a8ec","@crave/farmblocks-theme":"^1.7.0-alpha.97f5a8ec","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.97f5a8ec","dist":{"shasum":"66bb765852108d4f54bc5e806a10ccc82c94e1cd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.97f5a8ec.tgz","integrity":"sha512-HCJwkgEiZ1F1alPfthBwWz/JFCNpTOH0nl04QUGVNASa85ilTx2/179v+7izwDOUUN6C5OZFvorZdLayRsvoRQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxeoGCRA9TVsSAnZWagAAOl4P/jh2JM7F4fv0id1dUW+2\nbQha5D5dchGhFQZj3QnTPFceGaMsobljx0SXBVm7oeTGRnzDkLqRdfytEOmB\niCGDwvIqHFgvZ53VoUDL7jT0w+r3qc1oAGtIdnM+e9MILtyjH30QLLduqNds\nv/rTxe9VOTXdvikU/M2RWPjvV1Ede48k/FxaqWFJChTDJF/cTqm1V8fV9zAz\nGbXYl8326HV9UduE4J3+pqgs+0Lm3dQS4Jp9wNFtNco1l2XOxVb3xZLMDmz3\nM7dE7fWMgeetEUwyQJ7iSeqx7xdJQshsRCWZvsc3nmlUEzU3Ame4mBsLxikY\nBlWMjO0EgGj0fKYgHjPMqrp+EXAUMS07BXBuMUJnV+vZZRRnUtD+SdCKtPg+\nFSozLhCmrFhhQg7TVrghGqkWVl/y7qJi82/vFrCePf80ZouQooDakUPwaMWO\nqoXIGC11fLcy5p7cp2puFCLt+VfH5ep403zfTUiIVzW72o8pH34z7XEMK5MH\ntVz0Bi/zVTSY0aM0HoFqdMouHYwKW196VA2xVQErIvQAJzz/Im+VuCMC0CX4\nTJR9PiSWtJn2eDx4d7Nij8BJPn5wCqMxhDyTPOmQyEPMPy90fcg7eBKaiD1v\nGeCz4i/Qg00/oHXCGv8sRy4ev+oCT2J+UfvL+8LghYrt2u16hJOG0gkCrPyp\n5+yX\r\n=r8/o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD4VenYDWehUXHWNgjz7lXc8dZC8fJxgBfPr5O/Lq4PiQIgStFn5yS3M2qE+LJG+OrQ+KEnPyWhgXWIPUbZoxCBJeY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.97f5a8ec_1539697157635_0.36949005484365616"},"_hasShrinkwrap":false},"3.3.0-alpha.ed75aa2b":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.ed75aa2b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.ed75aa2b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ed75aa2b","@crave/farmblocks-hoc-input":"^4.4.0-alpha.ed75aa2b","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ed75aa2b","@crave/farmblocks-theme":"^1.7.0-alpha.ed75aa2b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.ed75aa2b","dist":{"shasum":"23a32f1c316e01e3ee1f436bad55dcac4749b54e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.ed75aa2b.tgz","integrity":"sha512-Fwj6GivBlqVLULyqiZoL2w4NdodhFhiyuNIOYj7Cm0bvhkMXn3Wnwm2VmSgWa0dvca3leQlwlj3uGJLGCmW3kw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxfxiCRA9TVsSAnZWagAATVQQAJN1lJCohhZuZ1i3pwe0\nPTUBVlL0z1uUszaaVqxqEp//ugC/RbfUeSmUH1DObKBLss0aLuVlz0W8HXgb\nMprS4aXBUSt7uSR2fjIxfpQcodDs8FP3GPCORfz5Xt+BApFbGJ3Q9rPtH7I8\nO411vnt98n2ZfFyYN/iohRdTDqlN2dUS493gvOvs7h18uX78EA3XSAzvlaNk\n8ogAx8qW6OIl0V58wWkQx0Brpiuo8JKlc5a91IrwRLFP6qzI+f2rQoXT6i8A\nfCTUuUFGKhB09CHZlD8zmevopoCJ46kKl+c2v3bVwGHffbF6odFby59H4u6g\nmNYjt05X9LUfMyeBmoIUP+/Noq39ftkkafk6rvlKhvJ8TenrdaSg43GU+DXl\nMZNb2tEFYxospnLHB8w0AwKXNnIpuYlTdi81TL2uZM7h/g7V4dYNlP0kCOvA\ncVC2lt/Rd2wj22XNwfYy3rr0zBRhIhPIK6LGdy1A1YdQPcYjrmDMfEXzHGH7\njKEi7Y7QjZouSqHAB75JuD5ym84gbtz2beQKGou2Kb1K4RGXmk+XL4wz/Qrd\nIHVRrv5y2/sK+D5tUx1YohGF4zGGWKLVbagnFPlB4uvVJXrvFU/n/fsnGOp8\nhDzOdSlQJLpxj7YImysaivsjdX3X9qAe7dkWH4iGp6GifgMwaplM9Ji7lCaC\nldU8\r\n=wjJQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDv0u/j11RFR50kHzNq59hTOnhoxIO11BlanKRwvXCbowIhAOgLU9JM5tp7Q23aLx8mFJqx/5HP+K0i9s/T6g4ZzlTX"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.ed75aa2b_1539701857276_0.3230595853384999"},"_hasShrinkwrap":false},"3.3.0-alpha.947af9de":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.947af9de","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.947af9de","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.947af9de","@crave/farmblocks-hoc-input":"^4.4.0-alpha.947af9de","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.947af9de","@crave/farmblocks-theme":"^1.7.0-alpha.947af9de","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.947af9de","dist":{"shasum":"1c2beb125db8c22945d62a650af202b01b08c4f4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.947af9de.tgz","integrity":"sha512-5grUTw2v+HHsHDYb7/1LwyfWPtFovtShHLW51dG5qBMGwwe+HbGnrMd54XhJfmPOAj7ZYepEl1bR92LHK5enUA==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxiPCCRA9TVsSAnZWagAA/PcQAIlgjrfnitb2ENKd19KO\ntbPIQXqvbLD3YGgZccJ9D864EIXSP+iYJyFwFpfp6LsgIFGuhEUfPJO+EAeV\nh2D6GIUjKwdCLzGLmdiKBrCT9ORGnW9tMU9CHMwe37NSgjdKO7/1Jrj1ZEgd\n3Kwz3mv5FQV7pxOj7MmXVyMVTV1w0iV7ZYZBkQbGgowUG/mS5+aJHcHwM+mk\n/CPc2/DViUAI6e7OILIUGdMESDlilPI714KQc0Yz6y1cQPXKK21/qXOjgI4I\nBNm1BvK9ihft5m+eUyxaJP434q6II+YzjP11G5EmQLb0EEz2XkOu4e0kJ5tq\nVEKlgVNKAB3lNyiRSB27xLtRa+81fBLxEUoG7QdTMz7/2uH5EQNLMOGskphu\njUjJMV2ZdZULVTBm0Vee/MlcI+bpaiXDU1R9t73w+yVyH4RIfo8w3r4Dtp7t\ncc4INonXY+Cb5ZCCGFCn9G6/3231NtPQfLNz9y4hW3gZC9NQlNQRXDnriehH\nOgyN2/ZDqeZX1Xqg0fVFDhmNyfhWpXs2lBlcaHoWF0GXDb3XQXKBKNSoobh1\n8WokwegQXbEnEdFpsGW5+e8u0r+CWBxHSxqOY66criJrjYEY2jUNlPEVNmet\nAm7ybPOjnY2sVW2hwkTJncoKsPOh/FxQBrw4ISbZ+oUeo+pHg/cN3oZ5fM5h\noQ//\r\n=td0T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCIqlIr88fC7NyMY7g3IG/0unpYGkNosbHmgwjq+7XT7QIgBZvbQB1pw/Z2NYBVmqNP5jVOHDj6rrGzZr8XYh7WYGs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.947af9de_1539711937964_0.9533580927569067"},"_hasShrinkwrap":false},"3.3.0-alpha.9477c937":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.9477c937","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.9477c937","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9477c937","@crave/farmblocks-hoc-input":"^4.4.0-alpha.9477c937","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.9477c937","@crave/farmblocks-theme":"^1.7.0-alpha.9477c937","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.9477c937","dist":{"shasum":"a2401af7e0f19c10b501f491f9d381dd3c18856c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.9477c937.tgz","integrity":"sha512-cvDSIaBSx/Qb+cQjVIpUZqy180kvI0OrNo9vQ08e4JVWxXqqnQa+ZeyTX5sfdEB73x9SJIGNYDULrLRbt8Qd0A==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxjswCRA9TVsSAnZWagAAbLAP/iFkcwU9daaYaZhrEJlH\nF88gKo7dpa6k1hKCD65k0XsZ3D1fWAP2qfmWDY33sjjbqyi2L9Utl8K6PI1C\njAO9JKGScJhu8cOpugceBMKSeikqo2JJzupGn2BZvIHj9B5YcItjjofP3NwY\n0oxzxzrWxWUPXxqHUHl6HJbcOI8NqLmK232RyuFzOXc39GFQQO/TnZQQwEb2\nGWIHUhtqZfzKWFC/daPApQji0XCnv+NlfOX3mYIwLrqj68UXLhS9KmcJjsTy\ntquvbEQ3L6fbcUAwlWK1HzzjhnUEiR7J/bC1ZBBYsXeBE3CuakHUI+Vp3h84\ns0mY8xnaqYoAgzfzFbd5700Bm6JsF454pxmcm3aZhPqOte23uZ9ZWAoM+Z4c\nQUvuYvbWQQKNt+OOe2SJvMkOBc350EJorBe22BchV/yalnlIQNDOgP34VJUV\nVR1kHxFXe7iaDnbIOrxQU2JNCx9rhGea/obqwi3h1OiQAEsdcUqHhNApiz+T\nXtIvd/FSfaMR7BB/ek9kUg5DS0uqIHgdK6oVBMwx2k+LFGiyhX+YNwgC5jBB\nNge2pKzKTckHPRX7SwxJws/e70Uzir4b4R3kzZilSZJX1yISI8325aNENP5b\nEpCdL9U3IjSdKtWmMW+THbW+xks788ypVC4onVpf41OeV2W/aPrkT5Va6oBm\nJwTz\r\n=4VMp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGDcv18C4iEk1cNhhWUvewrhOj3Jfp/unypDcdQcUlIwAiAmDHc111ing469Z5gzyJw1ueHuzwSCdQ1CIKL/W511bg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.9477c937_1539717936020_0.6380930938934011"},"_hasShrinkwrap":false},"3.3.0-alpha.f419a6b4":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.f419a6b4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.f419a6b4","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.f419a6b4","@crave/farmblocks-hoc-input":"^4.4.0-alpha.f419a6b4","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.f419a6b4","@crave/farmblocks-theme":"^1.7.0-alpha.f419a6b4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.f419a6b4","dist":{"shasum":"40c5cde2f7bc2c4f43921f3c18120b80f836d1ab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.f419a6b4.tgz","integrity":"sha512-lQpaEx7+CbajLpinbSB4/1x+zlX4rUEWcC1FV0jJKN5QapoffPaG8yK2wbSDG+kTf6REHqhivb434iltqfZqxw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxkRbCRA9TVsSAnZWagAA4NAP/2N1r40JH4oCw8j0fU42\nis+HwLnreggyARyJVjJfPOy7kBY1AtLhxy630xJzI8HSgDNlfdbolTZIUkVH\nuzzZkodawEtTFQk2D4L1OyNw/xvZv4G8QySEU5IBSn3ReDYQYHWt94Kz3atf\nzzs2VSwklewyVIRhR/SHE/Dfy2Ki3yVwltf/5NWi+x3MAMtXXo8Upd2YkdVF\n5GlDwXFo5rY1BUgXx2VQNBG812vvVqaW3Qc48M4c0kK1PODRiSX5vhcHDRo5\nyTjig3iFfSjPK6ZcpmrN7xtKdsRMzhinJwDoUHLDBzMxpYV/RwkUpN0cnUkT\nEijCea5aJGziOAij80tTZtD2OVNwi0t2NKfhvlKwwrOhxflBhcTGljup3g5I\nkqAe5hoKnw5Ukv5dlkRmVjpC9TOztslx+0kADkc/yXGX+jQgX6mrggbUmBUb\nsqN0PXu3csXJy0hzPenCyp1OwS5pjJLBh0W8fvtfMuoV0nwzMePEaM+rBU+Q\nQ/bbqYi4K4EwXQyWhndSoOc07qNle/JBjnODIzxTCbh/+Z22lxkdIgovwBB3\nfE3uqIOwdf5N2pY76ncZ9H3SIjlfsBInMz7w2xNyh0+1QSGIQzfnqhdhbHMd\nCz10KCxsUY2Eu7yXN/f/dovUn2iqP9ImoHASpzC5YUM3YY64CsNIr0lXgD1G\nhK5D\r\n=JXXj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHl1V4aKy/iqwVDO14b7LDt08BT54tk3M1DsqvRrlsQRAiABuj8upJxx3A1PM7wKDW0XXGae6Fu3Uv6SbndZqrNujw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.f419a6b4_1539720282580_0.74802554210248"},"_hasShrinkwrap":false},"3.3.0-alpha.0f4df0a5":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.0f4df0a5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.0f4df0a5","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0f4df0a5","@crave/farmblocks-hoc-input":"^4.4.0-alpha.0f4df0a5","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.0f4df0a5","@crave/farmblocks-theme":"^1.7.0-alpha.0f4df0a5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.0f4df0a5","dist":{"shasum":"da1f60b144d9ebbd4246cbe5f3f04221d8edb166","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.0f4df0a5.tgz","integrity":"sha512-U3e8uT1n7lAbCUGPFM6dX6HWv7CXpBCtdmyeKYsphGzQI35/sVqkPzYjdPDkPF1TbI3z4DUS9dqWtvF6sbfzQw==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxko1CRA9TVsSAnZWagAAmFkP/3sknNWsVDmdFElMFhhv\nQ/iZzDWpBeTHrZtPA5sBk7Ocz3PRWTK5S12LVbZG7zd0qRgn8YqOXAj0CNEN\nK/ivE3jbnoO1da7bnH0cFcikqC/Gdyvad7m3F6oagB4mQ9XGIfDwdE0scjqT\ntF9p/gJd4Xnn5hHmCCdfiaaKayo1frZVjrgN4ZTcmxcNWqXW5fFdKxT/mFDe\n+RdfQpgkcxoQn+hw86DUD1iMG7r0yTc/zkep5ND6vHNjx0pVckiwisUpZqQm\na+DKOCxqosjyyrPMaXaQQwnEECM122MDZ6G61b7miv3/kLP2S1g55ZSUQYEb\naYhBrb/G1WoxwORo5ih1IKdaCy4xOG44YW0BDD9SynhuF6NJ0m5+VlzukDkd\ne+05O89wHb8lRjf3LjEeIo+e88ZgddrKyq2xd2+i6EYvRhjITqpBT8v3bmTu\nf9ePYn4/QMVdbyhne6G7a2nvtHLRGSYptzRetWlryKxp51rbjKcVYw4r4joP\nYwpfM6aIhXw7T+Omjg/jjcLMs+KGaYbTvy2vZZ4f2zbj1eeHgViiAGNiAGxm\nqo/n3PTxKi+tGk4nBDCLcRFLxjSAGQSgp7HYDeci2F060GHVmfgb8Ey7LH1t\nRa/8iVFmKfkWXmQoHUxl4HmNvdgHXP/60jNgJmJ4x+wRtsYDrtrLXLcKawxR\nijHH\r\n=L1m+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCxsWYWwAtpWDFfCPjdfCFfyv7nl/UwsnzpLRb1ud4rOQIhAIq2HtyvlCuMUrVhtDAAgSAaArDr22/ut+Yoy7Fm449a"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.0f4df0a5_1539721780356_0.5810934098921445"},"_hasShrinkwrap":false},"3.3.0-alpha.b812d0a7":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.b812d0a7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.b812d0a7","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.b812d0a7","@crave/farmblocks-hoc-input":"^4.4.0-alpha.b812d0a7","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.b812d0a7","@crave/farmblocks-theme":"^1.7.0-alpha.b812d0a7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.b812d0a7","dist":{"shasum":"47a7adf34af566d836e660fa63e061cd93fd821b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.b812d0a7.tgz","integrity":"sha512-tj6/BR2l0P3tYrem7yhqRPgNfD6bWQyJJJ/eJZF17TBlz1QAfjNycGyvh+SuXXJO2wPO0l9s+R9Ld01+EZhwaQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxyaqCRA9TVsSAnZWagAATpEQAJ+1xXSgGErGpyOQnXMO\nOCdH9IIFYhuHdu1QClUEDFst2nNZDOTFsA10eTJqxSa0V3y4p1yD9kh7GKYq\ne+h916tyItJg09nMCrvXv2KbYo3ZL2K0WJMck9v1MC6Gq4Ns3FinUlRm1r8P\npk5aSudwF6Vdt68sLikfzpl6bFZiaCxHOlg0RbziJ/aI1zgxXp7YmIUbd8y5\nKQkyvr/KwoT38Dsh0nxWKy6burNM4A/v9/N1uaHss65J62VESS5YS3UKKsrT\nw6rdXN9Yc9einHVdyrbyFbykFyKQbnoBmV9qCLltCP7uLKWytuUfH5bhGD/n\n9fnyz1LourPR4k1SSAgtFdmB8elvNzVgqaoAI+QX/2hAdukK6ZaZ1W2cFpvF\nJoYaDKkQ5syeYT3hnAEG8OPf4jOUjYlhRRw0c1BKy5h7aUmKdTzP4f+n+p0c\n1ecxsxFKJVyhGUONGakfbV/G7U/9YcrfpQWRb1geZWU2SJxgb7Rh9zREk6db\nXTn1Ik7B+fH7Pxsb3SXn8SK17ggFqhU0dEaVY4GB6SD1GqhCqGR7i/dbEI0f\nFgDO7r+YBz9BagPL+0rTGvM6Vs20H9BRmMhfPO18YtoyeUPYgFVWrrqAeC9L\n/6Lp5fJf/utDVXxVoAv8XQjgdkzkG18R2gcSkkdqrI73RYhEEqKwepEROUWB\noe9c\r\n=Tgx7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGLNBZxe7W8RIgd5dGCD8m4W2kuPSDuypl9lyZS4MvB5AiBfIaWad5/s8JbA402yibEac8GdZC+s6rCRY82jqMEzoQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.b812d0a7_1539778218089_0.29930310174193675"},"_hasShrinkwrap":false},"3.2.1":{"name":"@crave/farmblocks-input-text","version":"3.2.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.4","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.12","@crave/farmblocks-hoc-input":"^4.3.0","@crave/farmblocks-hoc-validation-messages":"^1.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.1","dist":{"shasum":"0067befd55b3f0e8fb2d434d3d37d6c2eea51d5a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.1.tgz","integrity":"sha512-GDLN1Is5evjxdt2CmqvQQ5yXnlNtieQgQeAhhaGNMhBc9H4D4hnwfcyzbQevk+oxZVCwHBMOqjrNDZImkO7Kig==","fileCount":13,"unpackedSize":55877,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxytCCRA9TVsSAnZWagAAfPwP/RLoKLz5LcFnvbSWUCAB\n+Fm4pt8Jc2+wEj3hLHd/S0+l5larT572fsR9jRvL1ftHL14+cvppnNVmzuN0\nrmalm1ZiYZU+GiHaMXLjL8u9FPFjE8wvFoTWdDTSAjrZNMjnI+0sCe5t7ifX\n52hYa+rNYiBiTeFyDXMi8jhd3g499I7UBULio22OVLNSYwQLIl7FR1Sp4wI4\nzbetwOrH63XJtujprC5r6+x2HrwEfyRwUeWBrYsi0A+Bl6Tbz75DXGvtZfia\n2R7nRRfF092666eDFAdj9CMf6yJUhLrnS5kJXaj6egEs/zrWfl/hxu9ugAZV\nIa7LqMFemf8lGPSaSseH1MY8mNufXESprQmH7wzdb6fYfImtNviN5ZQ+x40Y\nYUKINqXaI/SPP0MzzWXmDcFR7DMUnxJUHGyk8qi/5n7rg/X9BkhrEbkwyMpC\n2VPPGP11GpOFxbJY+Gpyzpw+Je2gO2ASmAFUD3UuF/OpT9H7OS3TI3aBrutG\njueeivshde0vvMF4wMasTqbk8g0oSBYUh84+0NXtQ0shjQ9ELjtNowQ0km8X\n3MKre/C3PkSRANJOFwOVI2dmutktH+qOkM0iOJJTUG5HnWD5xGWZlsN8jbVI\nP9sjR9YDjbdYnGSiDH3s+LfYi2DaUw66HkBIIUnaLuoWnWPxYwubeL5pyXpN\nWshh\r\n=TWqC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDB9MdLxqc1Zg80putJYQG8LaV1/6/TG19ImZL2jsoRyAiEAxGIBPMmnBRSqDJwd48WociOgU2JnianIfTLoMEAwAlo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.1_1539779393688_0.9484223287753109"},"_hasShrinkwrap":false},"3.3.0-alpha.640632ef":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.640632ef","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.640632ef","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.640632ef","@crave/farmblocks-hoc-input":"^4.4.0-alpha.640632ef","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.640632ef","@crave/farmblocks-theme":"^1.7.0-alpha.640632ef","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.640632ef","dist":{"shasum":"f878bc847ee045989622cc8be1e62a23377c5fc1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.640632ef.tgz","integrity":"sha512-1f6L+183d+9P/OlaqqklT9Gi9iKlgJDrDiyDimxh2LhrMAKaO0MZGSBmaeebD4GgKSwlMjRSJfISvyKUBHnzqQ==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxzZzCRA9TVsSAnZWagAAFNsP/2VwkQh89PGoDXJx/ikr\nOPWKdTq/o06vIDBzaxNLKlWYo5MCKqKRhsVkgqtBXyfmR0EoI2T4XjX9db7C\nsNFjm8pIvme3gliDc+xdIPMzz2FiopByrHQ392NdsMsZuchK+Okhu4S6MTKT\nQjkI3dPWn+OZTjoMy5XgvLYw7qN2sLmCPIP+WXSRY26U6xsLolIGX7RPTctU\nt1dvVUgspQmPM+cKxssFVu5QfrcO8wrIGvzrdGmfviBDuzHkCN+ZfRxXyVCF\nKwedsdVFiRZ/gC25vNjWLV+zTct9u7bKxVDoSww9d1JRCJtU4QMtl5OJLrjV\nMhXjUf6LKTaldYpxI25TdbwKy+dS/GESZSmzHdO7BPGfqufncDKV7u0UzbcG\nnqtg0uNJYDGKDcbZsbT1e5eShQLw8W0BDMgrJYzPQfJrflvWOnBmpFBMyURd\nF8gtyTeN9Tq+vHgbgf942rqrnHrVUNpjgOsjGY9C5CUbxtLv76a3Ju/3AF1A\nwcaiaXETDZ0EQhM/nmzE9Lw3InWDN/kcnSlMxv9CSxx2pE61HgCPWrwtOPgQ\nqs7X7KVITm/JRnEq7tWtS9Xnd7SDZvfUbRPULER4UxF4Wvp99oZYg2vZOXzz\nXbFGm4wSu7rjjKocU/M4BDaV56bwLIQvmx9TKaX47m4uKzDxbLwZ4PZa4LmB\nS+4n\r\n=RXTs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDG/FZkUREkIY//ow0GobzF/TvwhsvY6cQel4HVHZZWUAIgapicpkYGnMPUXmdDYyTMNLOnCVCDEPYCl/Xc1vq3VvE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.640632ef_1539782258179_0.3512283120473232"},"_hasShrinkwrap":false},"3.3.0-alpha.bc4d036e":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.bc4d036e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.bc4d036e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bc4d036e","@crave/farmblocks-hoc-input":"^4.4.0-alpha.bc4d036e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.bc4d036e","@crave/farmblocks-theme":"^1.7.0-alpha.bc4d036e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.bc4d036e","dist":{"shasum":"765942854af2a79b36c1683240814a20929d567f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.bc4d036e.tgz","integrity":"sha512-us9XxezCSL4l01L7I2nei/E7wYupLGt4L7IuoVOB4G9tw9yD0oswQvxvtIjhD382zKCDnZIbfxRtdlZFefQFWg==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxzaOCRA9TVsSAnZWagAAAf0P/0HqhjDGyDP4aORocjJI\n3E/0L+z3QORF82YSKW6XK30vezC7GsW01uGaxdeviNzZr5pImw4OduqomwLc\nM+Hd/pcDcaWFojOP59T8w/6eGia1EPV4KiBWQvnMRZR8VA8fcSqfEXBZye6P\nkuUCViG/lAstRUFoOH7bMEZxc5nwjwWE8je7M28jAWPx8Txtbt6iG3l6hPbc\nnE09D8PpEMBG/Ldrn3aBtuPRQa/SmH6slYL0ypPYUbyEpdriTkqyfuMnNcvK\neQqg+Ucx5MTHmnvsC/IPpxaJd30440sqcsdkhk2U8oQ5bqsZ2t0xsxEctW8B\n9XH2Yo19tf6JrATcaLVev9EqfUIp3UcvyTgMhqNS9M5njD7J17byTqfG3ui5\n6SvGS03AUXcx1rfakF+3+aJS/kEANMLubLxxrCCZakxsYPYVE7SRdGDzO8oh\nkXTMek2feBvNiqGp3f757bIkwLABgZtS2LUsL1o5D0WpcDr8lGfWn+IuubcK\nL0XDlw7EaSGXnEcFHzr8cPEk1jHf/zRBm//pZmZb0bf3fKthkvHcRfVKPZws\necJJWvssxa1AgElQK2hrn1fH6JVnnbjE7cllx12zx+Yh1r1snHJAMaJXSSiP\n/y6vgy7EYB41gQuMSh6Orb1ZAss0hcs3w1bU4Aw+ss2V2YJ6G0BE+UOdaLv+\n+trF\r\n=vxW7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC70609VGU7S+lhvDQAehv+hQx07n5i65zF/bQIv+gyagIgad2N9TG3PQA0sP4Mh8ZpDgjMLbOsnRSJnzW67KqWQkQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.bc4d036e_1539782286063_0.6710008784823611"},"_hasShrinkwrap":false},"3.3.0-alpha.dbf7a74c":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.dbf7a74c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.dbf7a74c","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.dbf7a74c","@crave/farmblocks-hoc-input":"^4.4.0-alpha.dbf7a74c","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.dbf7a74c","@crave/farmblocks-theme":"^1.7.0-alpha.dbf7a74c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.dbf7a74c","dist":{"shasum":"27f7541210c450370d8d9fbf013518df00796b77","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.dbf7a74c.tgz","integrity":"sha512-j+ir7JqK3AVm53QEq1OMQly9MK9WYh3dhA6NYlq6/M3kL0UL50sV4HXWv2MhGkEbH5CaFzF9pXv/mrnPyo4srQ==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbx0B6CRA9TVsSAnZWagAACQUP/3LZ7FVSwKv6hSidYybj\nxJJYaxCQHDyRqkhhnwu82ydjO9PPizXm/r8c2DSsGHDBqydijuTfEVhotV6b\nn4pgQFZgGDRHU3GZB30WlvOEK1INHDzZgosHH2eWbP7vm3SxeJUhvVF9hV/H\nTQpY1yOuSYteTJGUL/DOx52rVQkDbbM6d8747QuGvcOyMl5NOiDrfhwTopxx\npfw6SD7lfc/1O+UdQMBGkNjIbggxpy/qb63ZO70a5bG+pP3T2oMfbNk3uPbr\nfpLcnSDPAb4V7Ay10Z4tKjNIeNAEszwV+imDV5Ck+yDkwEUXlO1ihYFn1uPx\n1KmtK0yqpBpPnj+HCkLQS+adpxtSbizC22Lw9WbkgIv3+/oA08C2ruRe7sFW\nkcf2GxQRYtk8IhPiBXWMtNgRKwYx/qDqeE36n9miWueFzARg0FpNZVRjhCoq\ndnBZYfx2mUGfl38Z4BBbmcQjl4fM5fCqyGni0PV1ZtCYzC/ZM9SGM8a2RsgQ\noATK4cUTaUFi8PMfZhX0A7Ebz0+GOUmpaGiFLwEsuzOS3zcfE85O7W2mO3FE\nNrBewuh90dt9cDvFA1ZZK8d/TEvsstEIo4Pf515j/Yll05gNqvUH7ZG9GqW9\nUN9dYKpNldB6yTcqEgngSlrTh/m3Y88lag3xTY91VRJE6sfQqZ2dXT6m23tv\n4HII\r\n=LxJc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD++vYa44dAupBEbZKfkqOE8JJjVRHbHQwajFXmLzpz8wIhAKv4QaFoB6Mmrfc4iE8QxnIYYQ5ZR5rcLTeO8phD3FDC"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.dbf7a74c_1539784825974_0.2623523342599645"},"_hasShrinkwrap":false},"3.3.0-alpha.57e147b8":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.57e147b8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.57e147b8","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.57e147b8","@crave/farmblocks-hoc-input":"^4.4.0-alpha.57e147b8","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.57e147b8","@crave/farmblocks-theme":"^1.7.0-alpha.57e147b8","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.57e147b8","dist":{"shasum":"a200f0f4d1417933c8411056de651e8611bb2252","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.57e147b8.tgz","integrity":"sha512-PywK8gYTMBPEwjx/y+bn89gMhC84I+qWZ+rZCYCejR246fxuwPXMTJnaSrW3Wubf/kt/w/qhpUd9ZgyJ8gfxsg==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbx0myCRA9TVsSAnZWagAA/VgQAJKFPoSrGUQ1caGd274B\n/9DE585hRYxUoEjpMhCbxoh4hbqBanJkzKdr3MhV43p0+rJ5jAUBA7dH4LZK\n/m43CrzehwebC5zAbKLGNbvHir9ns2pPfZWTTHYMsuzZlhSaQw4Y58YVUCTt\n9L+HyfcVvdYh/zntes2pP3WOofpHLrdB1V8hxljJsUK23n4ZAc11u+mMuIlG\nVcLscT891i6X+PkMHtmR2r0YnpfmRoOM29JKtg2qTA6LMQzcLq0h6iAMuEl7\nRPmIflntRUoj+DU0OGRYul+yixgbIISKfFect8Gq05prsGFwhtVB3XzNP3Ij\nK/l2O3oqoJ/hsVNtpwq0fK6dUsv9Ce9hM/SbwMZ98t9aRQZMdP89UDLK/nzR\naKpw+uPnKlVcFROsgxZySLX4KmAfx9QjcHETflOkMqJoAsSRSTnJ2JqJeArb\n4FsKRPeXTyonfTE70iTn6j6GyUOCn20++5dx3xQpFhHHOajGLXoDlmi15J8z\nL/8leJGhAib8WcCHeQ27TxC2MFJsuwcltHKjmVEOj6pw6tdEWOfV4LqashLn\nxwxiG3N8Z5Bb0Zofrc/0M0oIinfe2CFQigvLMxceKg+d5192I/8MavcjxXHm\np9JDkRAYHgVCzHHR7FRBJ8AI7aCvBH3h/PBu9gnElNQ2ywj4McauUwe+CyQr\n9eN4\r\n=UqUY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCU8OB5dbssxOiH/zHWQskbLEI872puIYceEYITw6PAdwIhAKo2hGKo6nUF8y6lxz7xTmp3lRBjS1WcVUnBpwBptkQO"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.57e147b8_1539787185495_0.14752281061390637"},"_hasShrinkwrap":false},"3.3.0-alpha.0cdfb5a7":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.0cdfb5a7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.0cdfb5a7","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.0cdfb5a7","@crave/farmblocks-hoc-input":"^4.4.0-alpha.0cdfb5a7","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.0cdfb5a7","@crave/farmblocks-theme":"^1.7.0-alpha.0cdfb5a7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.0cdfb5a7","dist":{"shasum":"c6c63932022c10fe0c629584d7b6859eb57a1452","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.0cdfb5a7.tgz","integrity":"sha512-2dUiJcVuS5OhGBlUwTqkR9MCaFghaFJ4ZsH3i0VEZapCC87SGgesuXJlOiVqlHBSBLJRp4lqZ7qsR6lLLBzgWg==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbx2VUCRA9TVsSAnZWagAArycP/36M9229iA0TvYqF71IV\nKlu61/DkB/zrkN+WYVP1FTCW5vYGi+o2lAuRRtL8jQm8wOAZG5Mh5rCckQYV\nNd2/9agQV8JLwC2ouWwN2+iji1Ah1fcEhzxoMEw5UGlZwAvvjvDvBMaCB1ZT\nCMp2+kebgNBLZsPL03dtVMzuUnLttiD6/ILvJ41c2epbu4UfXwkHtvs1s5Dy\njLAEmX4XaKeTXS9mCgIIjsmd14raV2lJXSf4TBuO5QnpRRzR0Ts+YqyILsPB\nlrkhioMcGdltrdmoGAAygSKMy82xM6I65fUj8zrNgQJOnYqMuxPmU4RjCXZh\nPpLVtTtQLNj3DwtUUsRbTAVp/DWm77WXF2cWwKdPEoKCO3mGkw1itqvj7LV6\ni/jbqxkGK35PXEkYzfsokx618tgHTtL0Dc5nWqlVzLK2iV3qgslig8Ps3FOa\niFHHv7S96qAaZBd5ER/jwf3B75cy1tkzA/BU0t+k8GZkLj/mW6/+YEviWe1F\nO3Lt+wkul3a8YwgkACZT3kgSCS/oR22pIX0RopFmeQ1mQhYtVVOvizeJs49j\nM+Th4cJNcXHWdUtSdIDXszjo/xKcp8b10qi2iGy2Ji8AhdChgosiBN55Gk4d\nJZYxHkRE532LKH38VwpjlnEC5uTKlPGGkzo6+e9lM6K+MiXokojAn1gbtOXQ\nKUJE\r\n=Soqc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDKaYrWIK89GfRDGqVDeIsn2+fx9A6WuOrA6mJeYTKctAiAgdo2OqiF+H+DS0LvWsHmbZcmgkz0hC+N0mLlWPEkzDw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.0cdfb5a7_1539794259638_0.8397386221752785"},"_hasShrinkwrap":false},"3.3.0-alpha.72feb5f0":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.72feb5f0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.72feb5f0","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.72feb5f0","@crave/farmblocks-hoc-input":"^4.4.0-alpha.72feb5f0","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.72feb5f0","@crave/farmblocks-theme":"^1.7.0-alpha.72feb5f0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.72feb5f0","dist":{"shasum":"06191826a28dd5cf926d9c633aba6169efefaa8d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.72feb5f0.tgz","integrity":"sha512-meSh3M5yL/ZO+YarCRQAbqFv0m7FBliHGbR5/hqfX4eNkyuynKnz/PoSbQYb3QvfeIQE1wCW1DzwcpqFMjHM8g==","fileCount":13,"unpackedSize":56010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbx3t/CRA9TVsSAnZWagAAW5UQAJ/xD3LvAO/nO1YV0KBK\nxAiepHCS7X3cHZmjOgFK6w5VxIKL2TWnra8qfvQiUADrxWdSXF8C9fEpX9Jk\nAGNjiJM5/1DrJkduwKIhuFvva//SXYEcbXauzqnAhPMeghw952LmpvoVC2Iw\nOyYWRf7CO8k5qNmkLGEQQAGnvsiwsWm+F0z9KgzRJyIIOeFWJXNsYv4PdO3K\nYfSCK1N/+eCOhlWJtX7svR8vtjIE9W9WXz7xeFsyBrs8YlC9Ht09LFUZUWvF\nDjHbcN0VZfphlVp26IerKhkG8FpA5St9Fh84C+3MAAkjzbQi9cWr3/P0ZiAd\nogN9VXbuD7mQEmC4u9JEsC//skSBDwAIrlim5465UwH29tXZfJoW5kfDIwLa\n80OttTXYXy/Nb/0dueyI1ZZ8jOCcl+eamVYf3gByEe7poMEMc2R1SaWw/sI1\nIJg+UWVQOjGuf967glLd0Qocjbhpv1jhrGdCieeCxIBcVYJk2y0+c91vn569\n7zKJpGm9W6WPSIKey4Wp2+k/Z0UU0duU1oWZIzhF4YO5mLU388/3daZG2iiI\nugJeoKLtXlNqrTuzclp9Q4tnbQ45kLPZ/3TsicXBqSiEfqgGiA3s14rMzrvK\nKlu6feZ4YAVBkn6IK0rV+D+8EfhprLwcqwd5BYDDKQPDqlIfz6uclQDB/+63\nq3Yh\r\n=3IeS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAS4vPu/uXxmGH6VHNMIU+BZFIPCrXyVjtWFE3DMG92/AiEA5koPQeXFj8g/qO1eGnKBfWM+bMJcnWrlMpT0b5tCSuY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.72feb5f0_1539799934200_0.5557188947322909"},"_hasShrinkwrap":false},"3.3.0-alpha.711f421a":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.711f421a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.711f421a","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.711f421a","@crave/farmblocks-hoc-input":"^4.4.0-alpha.711f421a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.711f421a","@crave/farmblocks-theme":"^1.7.0-alpha.711f421a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.711f421a","dist":{"shasum":"b240fe8e06b2cfd34e3cc7e1942f82bcd6b78f80","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.711f421a.tgz","integrity":"sha512-Mvi96LgbP4oefZguUTRUxv3DuDnlJv1RZNv+xJLiA41K1zyn+6C34JLPtzjcKh76AFm8/YGQG9zBQAAaD53+Rw==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbx35eCRA9TVsSAnZWagAAq50QAJmL3sDCnbU9T5D93231\negXl8Z9+fYcS9FuxgYnBqjLbdqhXMF8DShShYbi8P0BKH3yfs9U41drhd0/U\n1776+jzTzhnSVLC3YF7ZHwlQX7lQf61knr9undsLGuLn9UioTsdYKN8dvVwr\nSNQoB5pVtGZSuYhOEi/rt4IoU14wvgLqxGDZhNKJDLupSEdM/pOehDqxMiRU\nuT/H0w9yG+6CY3v4c89fmf4LS/f++7ZliyXDOG4wlqJXfN4au5taWhTlUpRP\nFxfLNtOdXScPHuXjACHotGn2TaB2mOySUCmb7twYsxsdwvV7RQU4LqhAjL9v\nmiKiQii70rZquZaX+c+NYoJxn69j55uJcYbcoLlIAi0X1RUgJegScnuoByvo\nkbIa5WmXNB90KYcTMn2nXOr7bdv+s0sKkbGupiB4iZwtNZJSmvSdqtTFeqtL\nwlJ5qB5ZI+mZhJQfl8c3+y9zr8sx5Tn+cIn5vceOpzNThe0BF/GswVLq4y12\n7Qbz1v2SCeBOXMMlv+7KsjEbWh6UW+f1NnyNjBceaVdsHm5Q5f/ZP43AJoOB\n5Duf3AZgqmYOm8lXJlFgKaw8HuC4abF/fAx4kc4nwYRBmOsx/qz+KtrC68CI\nqll/idyhtaR3WxEJC8+SVobxAG0KsyQk50hT6yyHK5chsYLldyvH4G7GTMqg\nK1N/\r\n=vfSt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEtVBq01RGszebE1GCVXWSQZGUXGvm/2SjCytIKkycjCAiAMVIniOs4tQktUHf/uXdW/1z9lREtUWDeF6zr5ZSMwtQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.711f421a_1539800669620_0.027980239486911085"},"_hasShrinkwrap":false},"3.3.0-alpha.034ee1e1":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.034ee1e1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.034ee1e1","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.034ee1e1","@crave/farmblocks-hoc-input":"^4.4.0-alpha.034ee1e1","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.034ee1e1","@crave/farmblocks-theme":"^1.7.0-alpha.034ee1e1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.034ee1e1","dist":{"shasum":"995b4d35729f33ad87a93380969aaa7054c861dd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.034ee1e1.tgz","integrity":"sha512-iRbwaMGVUQj+TlaKAqGFLDEhVpgwcZmpL8/3L33mByrgK8RlwrcgY5vycn98o4o2Y6/ZbCseNy2JDcGh22bjMA==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbyLfiCRA9TVsSAnZWagAAH1MP/Rdp1rawfX80zPE0z3Br\n4T/rK2I/7J4I4zfzXbCMuW8gv00VD6blEu4Oj7dCe7SiUuo79yAIcPUPP19E\n/9qcb6WX7szwPu8aIyWzmBwc0MCyEfIMsyQnXAen30Wrcq+UI67yRriUNGPH\nVgQEIGCTg0wq+SVy3J332WlG1tG85UQasNmQCd/pXNvh+gOaqJjhnr/z0RBM\nDqbquct9xlgonBNupV2Wn0mwAK2S5Sjt0GU8SMELZYWngZ7ARkJzVMySm0Rr\nB66XLAi0vCXUFBEz84JhUBi0zkSsQU7cZV4I/jEIfZ7qcqjwxMgeXn3+VF81\nLzCCkyZ32mW++1GGH/6Y9LGeDFY7CSEF3L1aL0V7fxQ3/Z5NByOAI7GHx7Oo\neR+wU4GG+nTMNzGsYtFKmsMBR6LBnS+Coyu2ovO2ttzZeHy6Uq0IOTq4Xc2m\ncUuSLVO3dIs1Mp0u172mvuwrXFNHWm6SzhAYazA6Pod2jLPx4FOnaqMjJw1A\n0VJyImyxBOCKo2PZpZIJ+g1bHTmRA6hd0cJL/sron+JT5PS69G5IrNLO7GNv\ncJzMMRlnFQTr3z6zZJ4hEaCXtsS5ZJYvJbPuwc8Td2ZgbLK6OJF8DULzVFdz\n/jGunH0NVkBGUYCkWsQivBa5GOL2pmOpBOQzvz45u9Yo9gbf6w/4KH31h3v0\n5+mx\r\n=5o/Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF9FWOHa+d/dlEynDwu8dwDRFbwWLSuW5pTL+47ojJOsAiBKP5TKWizoqOKmBPmA6MqxguqBGlQ6G/b+Oi1K2ocnaA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.034ee1e1_1539880929147_0.18142142593627342"},"_hasShrinkwrap":false},"3.3.0-alpha.ac6e0707":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.ac6e0707","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.ac6e0707","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.ac6e0707","@crave/farmblocks-hoc-input":"^4.4.0-alpha.ac6e0707","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ac6e0707","@crave/farmblocks-theme":"^1.7.0-alpha.ac6e0707","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.ac6e0707","dist":{"shasum":"158b2005cd601cb82f963107484484e62bb991aa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.ac6e0707.tgz","integrity":"sha512-JOLEzDOZIBI7tIPpYTxYqn+1xiaIcRRSDMkZiE73td/jpYTRNND3vsExeMLGA1BNHd5MPxkgN3SA6dCaF2yuTQ==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbyRWPCRA9TVsSAnZWagAAKFoP/R5KHBMw/v8uOCKa7E6g\naHHdaIY0/oVNULh9hSG+cfufI4Ao94/UOqDm67sr1so0DUaXexXmpG11FeK8\nuyxN8PIEcDcVNV1iZFjare1vqRDJ/5WVwxX/Qlofaj7GPCiIkG+MPEEgo/Bg\nqHM1659+/yw149r/21kjHrJQ6csxepL8SJOmfZUnL4pPU3PprbK4U8gJ6CFS\nXPQXIPNYdAL3g5TgKBNvjTgRfVjK6lR0gBC0Em6CBylHLXP84YIKsAkIXqhs\ncKfQXsIT3MVUDnnntrvNqPVT6Lhz+VvNf58/ThEVUICgtBkaP6Fff+NhATML\nxJGV2OBVPFZgYivnN9npw/vMOIxkNX1L5RionSEoqyQIMeALQzVwCp2fZRq4\nvIYJJJS3zdIH3/73as6s+PwFINByvnB1jb5orl5RT8+zW/0AENj3J5fA+ek3\nWIqAUH7EIBbuYB/R6Efw2W8ea0UedGvLvtwQdrqt6tTMuEVNPW1gUinpkvkm\nmS+Lj9ibRt6qGo/n3WsqmR1TgAW9FnAN1py/QibsjdvzfW6EvxSOirHrDPby\nZbCO43My3UilyGRrnc52dJ9Rcm6NcoZgqCc95TrUswaKEGW5b0833J8N4Elg\nwre4tMjRa5dvNaTMImLuDn6YDb5hIJx1U41l4YRlODF61VVbuOLmXoWGzg53\nYoGx\r\n=UbF9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDWOP9TEuhW7aePb6o0akK+zTCXdJMIcEc7mkvIaE1I2gIhAMFAy7qUKHNNqtaUua8pGYFFkfq+rWTu8yjK2vMtEal6"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.ac6e0707_1539904910460_0.3194848149845444"},"_hasShrinkwrap":false},"3.3.0-alpha.4bdb7036":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.4bdb7036","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.4bdb7036","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4bdb7036","@crave/farmblocks-hoc-input":"^4.4.0-alpha.4bdb7036","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.4bdb7036","@crave/farmblocks-theme":"^1.7.0-alpha.4bdb7036","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.4bdb7036","dist":{"shasum":"67d9d53d2c2ea6f3f97c486c85d9174459a8300f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.4bdb7036.tgz","integrity":"sha512-cc9JtZdp4/EzhbP9bCVl6aIEKw0E+hgXno1qcDDgMMacrMBnzMBe9D8KKZdx+//JMd6H1MJsyyGvY1RQK2u4Lg==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbybiCCRA9TVsSAnZWagAAIWAQAIxc3gRLwZUWIFsSJt5q\nMeRgLgx2DjBAmo6tvk5/Y9ioQMsrD2ohWixSv1iu2RdU1UAE5NNJtCp/Z/2y\nX4WdnCjw94q17GKHKo6RHHii8GxSCDWWtzGwoF5V9cyoZ9F+S+RFr/w7B1N+\nxVO/x6Sh8mG2X8ALWfqU23Amx97WtumuQMQUvedELIAmGh+ZZr+E92xoBiUI\nkVqQJ4jIZq8vlbeaztWOXpqfrx2E0AKK09MdRvXfMbxvQp9eQupJfBY1qfSx\ncstCsNoLO/yw2ihQt2KZiCqXKKDBHFFQrsvLiRoABbl8AivGbtP4Xv2QarUu\nLIj+sOyg37Zk8YfTiUlAWRVHXtnnn/3AI8w+1ANzZD+noohpjUYWjLpSIq3l\ncKRYI0F5HTi4cCeTOPsbbFD9dvGOUtusBCtzDO+LLwbsaPMulo+PIiigkrj4\n4h4Yh+zrbl4JGppGxDWkOPhebySf1HPKMccIs0AfLN5UlcA7faKhoHDHdCnl\ndzHBQ54XRHpiZ8H8airHZZmEZWbGWVJalmpGZffXNChb7rMgYd+84ZT1LsuC\nKeSSPPYgVaLObktkueLqKX4s0xB/emt3O+GqzBl8HGPrn7MkJw2EjHOIHMwP\nax0RNq2gH2aikcMWEUA4OqR+0efyLQ/jxXhlVyxPtrtbWeDpeYWacqpCmPrz\nQPWa\r\n=RI6P\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCp9dJICrS1F4idXeAnwXx1R0gupbhTJuye/Lhwi4mRpgIhAPHLrTrDLnUOEYSQiNu1kVL3d4+x/mNLWyv73ZH00EC5"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.4bdb7036_1539946625348_0.9088516151249808"},"_hasShrinkwrap":false},"3.3.0-alpha.e2555a09":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.e2555a09","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.e2555a09","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.e2555a09","@crave/farmblocks-hoc-input":"^4.4.0-alpha.e2555a09","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e2555a09","@crave/farmblocks-theme":"^1.7.0-alpha.e2555a09","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.e2555a09","dist":{"shasum":"53bfd7be6a843732362758d7651befdebd3bcccd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.e2555a09.tgz","integrity":"sha512-w+vLJBX7cXe7yh1QsG5Bodvepk5w+K5KtViGbBjqzwz5eDmMPoYiJWoFUjHKh42oGmK3uEi4hLdBxCu2Ntolww==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbydpkCRA9TVsSAnZWagAAzU0QAJVwWLfXlBjS3WRUbWkp\nkJogYQX4rko0dIvZ9tyXWPcHeoa51Mto1E/vX51C+Ki+Blg2/kxJq+St7Tst\nvKwSFr+GSEjPGaFO8+N+Y4ybCq+wJTp+iV/io89h2Z+Ej52i6Jzy8ngNwIBJ\n/P0+RVprj8Tm9njLEmc1qlG8gOFNhnKpCGhExaGONCUCI9VQDI0h1KORy/Un\n49NMgMndciHfgexGpPptnH+HrqXwS9ekQgJTAXpI05L4yCeg6Pbi0uHRPyg8\n28Gb+eule7MAVxaHEdqD/EKp5UuwQOy0qehrRGzNgPSV7aj2aCyshIdS+p/G\nc87Bz6WNsyf6Og7294ov/ih80NZP6qm3YBOUXoOpBqnsfUtU5LrltuMSOOsj\nh232pwZdW7VHM8/qXYDDtJE3Q1q6r43CjrcsiNtSrz/C+kivWIvWjriR9PlI\nTMXuCKoMXwHK2T6sYTRgnBEVujXsreCi68VBmf6COCJCSbeGeWOn+gNg5KQ1\n8nHnbO1Xqe2sR8SCFyEtdXejcla+saAbFwSB0PycgcE1hxRbu9zcckP8X0cx\nQj2JxSRcs6LvlKid/W6A0Qa7EielGUcEd7KNd3wj1xlZXntR80leUW/ikA3D\nVdlK0ni/waUes0BquUZyTzu1ZRtCNAT3mbEomeNdQyiPl7RrGNVdn/yQIPTK\nSQnr\r\n=hXD5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICnYFfIekJC2xE4wdcHwSheqjvuuB7PquXQFB44F6KqhAiBG2Erx8Ey49CexN3N7DevAeodiFFsToV6ZKxOVBWVWEw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.e2555a09_1539955299744_0.06698252456654741"},"_hasShrinkwrap":false},"3.2.2":{"name":"@crave/farmblocks-input-text","version":"3.2.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.4","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.12","@crave/farmblocks-hoc-input":"^4.3.1","@crave/farmblocks-hoc-validation-messages":"^1.0.3","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.2","dist":{"shasum":"76ff01ed62b75b814a44f9eeded9fb59ae264d16","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.2.tgz","integrity":"sha512-d/Otnkdm96Pklj1cmuUXeRHr0sFIGNWrVfLP0ihqfXlWtX34oEuYsEOdoqQlF7j06jNCaYeffQxpiRf8SaGcJw==","fileCount":13,"unpackedSize":56117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbyd2TCRA9TVsSAnZWagAAkeUP/jiZDZyhs2NjxZj6Y+jz\nCUi4SZSKuaCvVnAunLa/WNf3y653A2iroUyGDXqP1LvDQgDIzYYCH8LArfsF\nTaJgONpEhu7ua5vFQ6vI2Bp18XTZO4f/x7vI7JIQmqfCGV3LuEkyKL5oRJPQ\nt3NFu4QhxU3ofFQZ0LgHo9Bye4Vx8omz35+m0nKva6rkVtYBxvBdHnw76H6w\naz7hC7hCDGVW6icQpwU2X2v4Msc6317uCXMpIgVhrJslT5Em6Df51GeArc16\nAHii3pF/ZzRkk92novgAXKUdMSSZfUo6oZF4OG2EQ7jL3zOC6LsyQ+ZvLYZH\nEZ7cgJq/wCp2I1CjKZX06A3mffrCTCNrZR0rocHzFi/mLl3gOgMuhxlyjf2+\nAYZ+NnroC1Gi3v6EN1D58Ds0j4V92UWkAZxB4n66HYyKCBxf/glb19I8r+xy\ngUR6rWWDNg1zFq7B5e7qrWrO0vV7DMvp7BCNxKzkRJFjPxZ+Dm4ZJxd2Bd4g\nMSaD6YBi9q9QZPlu5eJGXAtFcFeO3f5wTtY/wbmBOdnc784pYIXW+VqEKBPU\nQMr26VNqp/NEhQvIe1zrwtj8mK+uGwCnrWdi/SSfAaVhKWP/kFRkdSs8kAhW\nkWtmg6y1hCAsPCareFFgNPijh3VGE5lzcVIXBL9/panLtHgr8nvXAwECUmzq\nQlRY\r\n=zuTp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID8669V4zzdAkejvg8255zhgrGDkHHIR50PPm5+CqG1QAiBFibzOW2FidtMkYEREtVvUwMU6BVZA4PtvscEkkrUQ0A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.2_1539956114968_0.5170418229850597"},"_hasShrinkwrap":false},"3.3.0-alpha.c2f8c5bb":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.c2f8c5bb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.c2f8c5bb","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c2f8c5bb","@crave/farmblocks-hoc-input":"^4.4.0-alpha.c2f8c5bb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c2f8c5bb","@crave/farmblocks-theme":"^1.7.0-alpha.c2f8c5bb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.c2f8c5bb","dist":{"shasum":"9f184fa5a652e1dc5e497f7e22333cb1a14d5614","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.c2f8c5bb.tgz","integrity":"sha512-pwrc8Ft6bPBRReHzVIRp1jpQMP6sB6NQpN3ZDRSGrI+UCwPljPOIn8XjRKivmMkSQpDN8xsl5i/lkcFfrDLHLA==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbyd5oCRA9TVsSAnZWagAASPwQAJ8NaWIgAy3ssFjgXXW/\n6JBHzf9S7WcwXlukuqMP7ehimu3ltPq3r+DczBJwuHe+gNlBkLycWWnCE1wx\nAU7qfXafZiGHaL4jNFqXG4SDXB7//TTUxheV6iaDA5suqwTrVEZPpfsY6kDx\nmVtRb0M4ceD2NlqpSIa6dnnkjLp103ecOo3dhl9YRt12pl9brWrc5o644a4T\nqS2Bs37iCGU94ox37ypLFJjjhsYwvg9DorRQmbBNCFcHq/hwVopsNohFja5n\nkchS1ZQSwZO8wH37tVG8FdgnDGl5wr4f69/9m7pEzlubcjJh7ThIMnS57sQx\nYOgVdLgsTbnOlkx5ZulEUM+fIzqhCtf6tEEqCCoPrRB6L8Kvt1olOMHv9JBk\n89Sb7eutnuPnPCJsJNnVGYB7JpnGXK1ZnpNf7J9q5KrrMZpbFMepUkGsV0Cf\n8VfLVyaFRW2HFP/pZ4OdfmwNAJDj2UD9bCYMUNyP64X+Lp/I87GHeYymLNmc\n2UMk1j8SL074vFcL+FB8ZuvXkNOblmWB6fi7FCodAv7bH53FoFkTRMQq9LvW\nUSJn5ZAK9GLwsOU1MqOWKa3v1QjVvfKi0hF+1uKy75jve2aEXPvXs2rVKgdL\nK4h3Vg9gEKbYjJx7ND4EWCsjSKVHn/tlDAn1alvTIFqWvxkYotcSqAsE1Xav\nWY5A\r\n=BhJp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwIFqx+xPOsacfdHj6OJSExDwnhmF7lCJRVXcapXPHigIhAK1VeYIgTQkO8sEqbZTijA7WS2r/6K5S/sFDSunprr4o"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.c2f8c5bb_1539956327932_0.01903816285864135"},"_hasShrinkwrap":false},"3.3.0-alpha.bb47cd4b":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.bb47cd4b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.bb47cd4b","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.bb47cd4b","@crave/farmblocks-hoc-input":"^4.4.0-alpha.bb47cd4b","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.bb47cd4b","@crave/farmblocks-theme":"^1.7.0-alpha.bb47cd4b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.bb47cd4b","dist":{"shasum":"3ef172122b56102a74b4f0b203a5d958c8741b79","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.bb47cd4b.tgz","integrity":"sha512-ACNRbyexo7yu50P4Ksy5KNOu3MVS5C6SFDmYfgA8TRwc6jFg+/RwznGGXYthHEwzvYtgBwXrZtmFMkVJO/s6Hg==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbyeIHCRA9TVsSAnZWagAAq6YQAJ3gRItrry5H2g6QjEy0\nvCYL3Jwfu/xJ7SuZpazkroNqUJi6HDGGZ770Wu5BTXqJhblbkMCSsnH86OOJ\nenfe/i67i8JRlGjNqvzmQhOoZ2vjUBzifMknaYVNvLMuvrh1d5ej4BPTrhng\ns87ZUT1l6IPos6TdrxSj41gjDoBX5McEXHl+UQP6DMSBhpxbeVPI02ptS6V9\nOEpz2uLZbQv1Hv0QhiSTyzkiLVr5eKWqVWGJQgwwOFY5j89OATSdHaFLIwmn\nhx1pMQuDUxLvVHb17HzMKgQe4p8wx/DjvZFOHirz48bRM0Tk/q+9DvYzYCDm\nrqozKaRI/yKELyECu1l32I84nNeRTOr6QRhEeBqtwxiIOyfO+urtb7ZCjmOx\nfjYconyMsU5W3O5wiAIq5Z4lCXQ0PSi9azTz+KvFzdp4r4lSi2A5EL7m4GUA\nT0MKLrGwfJdBqK4SfF0PHY22eCgS+4o3r8wuFwvETiUrtf+6XACle+7SzFLx\nBAqKUUS9lTFUjfj7ncyw2E9zJUUelhRnOzKKWxLpLIvqiAvBbS4JzOGNIm6q\nFWOx+eCr3JfrrcDZJuInn2ELATzt4tunuQRqP29tkJ3Rn07BJ53sbVu7eKZO\nFoVSTwiTzQlkpFbI7FEdApZZZzc56Pwko4hkG7HAa4K/QBrExdtyFRCeLsgS\nnMcI\r\n=6gi4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICu51jzE9Xs+UQBuhsR46yBxjC6fXHnAMpzdlHL+ULBnAiEA5JofDQASd2nnBuiJf92Q7ahSZf8Cjgwtaayw95N+JxE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.bb47cd4b_1539957254453_0.8708929218594661"},"_hasShrinkwrap":false},"3.3.0-alpha.c609372e":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.c609372e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.c609372e","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c609372e","@crave/farmblocks-hoc-input":"^4.4.0-alpha.c609372e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c609372e","@crave/farmblocks-theme":"^1.7.0-alpha.c609372e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.c609372e","dist":{"shasum":"3c879411f84118377bf9335c95b4c9da1a73dcb1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.c609372e.tgz","integrity":"sha512-FfAv+JL091Rpj+yykQyb5GW0Xbn/Wn6Uq7NVtWMtrfw1f8t+ITTiWTUJF0DHwnrX0fSO9Ko/KB/Tud3XD4UtAg==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbygz+CRA9TVsSAnZWagAAkc4P/0XOVsM8z70ZGtEXZ820\nhQl211CJSycPKf/UzewaS79P20/DDvq+/LAzCn8CQgLemib71HDTHXIIRQuk\n+q3mWFCN6Jh4I6koSMVU8QCBdZd5ludfZnT/sUqDKLTXFJJcCUQy3TRQmb8g\n39CpWPyvyGIqRiHWq8tcK7QqinMbYO8Cq+PZo1fjKPn9kwzJJkRiVUHV8KHf\n8OesVmjxM4mqhVsNkr1gXBDH1CGb2Bn2WR0qKLyFhiUFGRHQnVVEu9AATnL/\n/I9mojnm5mZk3xn/psDBnMdnjO8Mrgdo+bCNkPgk5nQJKwVKBDtoJ0XbfqHP\nBDY1qtqwrs9mw0vAV3Y2bCbInC/T2XBIfcMJtknPk+EECmjb1WyrY7oR/UeX\nTDHKJiHmNgqTcq/xdvfW9/mWKtclbsXv87KAhat2l2ho/vBic3FOC4EKDgj2\nc9dSEpIBmr3NG38fyxgNjlsUMEo7KqmbJg2lVcFJL7cuLB32DFBekLKtZXpY\ngOcKUecwAcMTz7j6OcWnZLZpUiZq9C6T0btjMYhZrX3rvefd7UhnzM5qDWHy\n2C6BPnM54TJSrQQ5JUaOoRqbRPwjWvTgXEESDkYNTGBrQp/w5LDPwSMkS2Jz\npKp4++mdc4DeK5erW/pkQ6xdTZX1VUJv4yd4ETJfAAVN974muMaJsVCh8mXS\n62br\r\n=7jDF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA6UQTfmDQ88ARTviEHzaQd1cJtVhM0sVzI6+chRgmCAAiEAi07oPHXy9zQBXDjGHtDE+jqooWOR3q+BZVU9OjQmys8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.c609372e_1539968253347_0.6768959430903119"},"_hasShrinkwrap":false},"3.3.0-alpha.25fbfdbe":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.25fbfdbe","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.25fbfdbe","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.25fbfdbe","@crave/farmblocks-hoc-input":"^4.4.0-alpha.25fbfdbe","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.25fbfdbe","@crave/farmblocks-theme":"^1.7.0-alpha.25fbfdbe","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.25fbfdbe","dist":{"shasum":"e33a077c9091587fd87ba4735c24a2e3c17ff361","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.25fbfdbe.tgz","integrity":"sha512-tKE23YKh/rXxNP4gMdr6FV89/uSjQ1UhMvtMxkr3VIymbJvHHOJhH8rmq7s7x8uEkxhhzkLRUo6eAZnmPAC1Kw==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbylluCRA9TVsSAnZWagAALPAP/39s0rLQWKMw48Dj96AR\naSCZHFHGCxNJgpVGoDMisdtUAlRv3HzhHxUirNFwhZkoU6W6o1a8iaNSbQl3\nRMTguq1G2IwWPTSul6B83/DtXDqwLvV7SAfqdK5Jb6/+fK0BDnaM8/Z4FQ6p\nv5RJO1qAeHV+DMRx6feBNHrmeWAN4UF6HPTleanvTCD+rYkML2ncaZ3TGR5E\nEUaVkg5C5AFBDa+dWCnQJcoinNMWViD2dy+e2QoGKaFKMnoL+AZ50XULcUWf\nBEFG4Pz0jwsZq3/yzKy1ci2RNswvWhcMuGO1XpH4n9q9MPjzdQnuzC+QRXxd\ngCLtWE5C5ju7KjmdBYt4oNp7H7XqMzTOCUg5wfFGqGycJIIjNMxeXqBIJRG4\nsr8vq9yRWT3udsmY5IVdwrCEoiXXbj6jbAW0ilWG9mbhrTk6sWVs1iCG331z\ntCZGhoPUpA4FDAOhgvCFh/lV6qHMpe99NrxEy9eIMivxX914u5eJPVNPs+vv\nxok4Qyua7P0aCqidZwQI8yT+hiccYKHlfLNpuL3qQmRCP1PP5LpOfx9peyIe\n4sUI1NfQvT3UxdkxueczO6cva1IMCeOcD9HUXarwLaJlaFYFF6ndidom8rBH\nQlOsyZA57rdbyl490sSL3G9Xy6XGesVszlEzUGrFdHKGZfPvYW/eZRWtG+/W\nXEiM\r\n=hlbT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFd7iBw3CpvPR/f9FEOpXv8ud7uEzPCkuu6w9eHC8cw2AiADyYXK2U4Rj2QW+V/wx+w7d65XjZef55gBc5vHi2XVew=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.25fbfdbe_1539987821561_0.6087357150858208"},"_hasShrinkwrap":false},"3.3.0-alpha.4685fddc":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.4685fddc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.4685fddc","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.4685fddc","@crave/farmblocks-hoc-input":"^4.4.0-alpha.4685fddc","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.4685fddc","@crave/farmblocks-theme":"^1.7.0-alpha.4685fddc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.4685fddc","dist":{"shasum":"fea202738e7a253f19549c4fb8aa736a1f248354","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.4685fddc.tgz","integrity":"sha512-bo6N7mNh5zgJTpwN2Kj3IpSQs8wBqLC6qdE+KAQ5U+7RHO/3wAw5Qxz6dykJXQ8QJFwfq9Dwbr8TnNBTCtdWIA==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbyrpQCRA9TVsSAnZWagAABB4P/0r8zFDr+ELtyf3bD/Bl\nLUmU5rJolLvR+iwfNIz2UX6UO0xLgRzVqZBq1xk+Ik5/q7uxbG7KVgvVoc1G\nq3ULc4Io74YbTDSMlVmwZvOolOZ0BWU/89/XlevX9JVDpoTg+9fisMcpMhDz\n3Sy55pKdnT5zLFrbie58Ckx6kjkjFuT0CfebE8jViQFlD94a/xNfU+AE5w/t\nKKfOIbyynD12MKcDF49xhnMkMXtBnlvJUDnUK168WIyabPLWERMO4CP9edQQ\nKTjYDV//3q/WcGDBFoHYwkveRZSiPuC5AO9Xg4Q+IwDrYkeLxxAepgdJorlM\n9GVFCznj9ytsOJIiASeh1gn0hMOEyoovSYN3hBWZWkaxB2jSlGN6+43vqa30\nqA66KJuw1f5xTIY72iXTanPVWXIZ7szocTWYuJLNCMiZ5FU12PK5Ey3JqkSb\nMmmGiX8gB+V8EeYW7sCITRupjfNzwxHqhB5AKFdK6IUoBV7CnmESJ1UClzaS\n2yOmgjiu6bglTOuEnDS+UhHGRQhH5L2A38oAr+tGsXzEEIivOAONvPxv2F2T\n+Y9Ai9gLwqWdQfNXkxlTw35iA9QGPH50GcdK3DN1P28eGPh3MFMeNKhi+38i\nNE4DkLjZffZEc3SNfGDoGNIJPY6WT+03HD1X3+NvI2ESNPlToHncfNzaOglF\nqlml\r\n=MgwR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBYLJ/dVB5ydBhXeAwo/EOIckjVGtzhKx7QXYVd6pLwwIgWEVIqgfTm6XkcSBUIJm8TCXdrcJdHw4mnddGnas6LRY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.4685fddc_1540012623877_0.23606829477324776"},"_hasShrinkwrap":false},"3.3.0-alpha.328cb768":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.328cb768","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.328cb768","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.328cb768","@crave/farmblocks-hoc-input":"^4.4.0-alpha.328cb768","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.328cb768","@crave/farmblocks-theme":"^1.7.0-alpha.328cb768","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.328cb768","dist":{"shasum":"f7d6947761c7710993ee05147570b8e8125519a2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.328cb768.tgz","integrity":"sha512-YGu1QeiMXSeXySNKcdbP6i3SzqlUUh0MsIMeRRnHGbfNKbvVznQNHW6Ecl/uhersoWrKqYeVov0V6dzLWdw7zw==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzHsyCRA9TVsSAnZWagAAbsEP/i770kHlIKXJ28UMYTh/\nUSkHQ6RIDeSyAnhS6/bxor/BbpsUNE8G9Yr2a6Ym7ltefxa/2iNPxMNJrluU\nQzUOHccu8TX1FqX02PxIMtss1wCYWkD8l3X+F5+IBoc0qroilVd2N6yhfq91\nytAgcILENeDwFrrcwdS48eRBho4/1tkWesOn4hkkRdVOoOx5p4oVPeE8clfQ\nwoCdzqRDHvKeynug+mXMl3a6dyO1IlA40rKkkI1BVvRnZ7jUUvxfyZHTumEa\n03Kk34zf7HPSW4fsKoCAKwlffbU/mLOnXkPQbElfFQEdo+IHWBgogeaKS+w2\n1eHf8gRLIPjMBmaJ2djD/QklqCXfaqeWMtEE4H/29uiAKYo6iIZBuWiGLDkh\nMyw4YRRjxB1M01+BFeRbpAC0Shjz1dRdJXuYy63L9/N7f+nYQYpPpWWE/SK7\nT15BisePczOlaEwihIru9uvjHnLghxWghVQWxY7XEJaq/2NkPru+Apwb1DO3\nxoaWPb4GQpeTC2d3np7pyimB+LE1iF5tcXXWAPYy1e7I8wCgeyisU2ZMTNGj\nPBynqiutQkj6SOg3iOG9XikGZiPrD56Oe80oN7rpOKDJmLNu2rv4k8EmohyU\nbMsa9C8A1EGbLFNuIaihOoRPgyck83PT+q4W6RbwlNi+u9JVp5pGvVqd0amE\n5X1p\r\n=hrLv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpeumbV+hBanC3HQHiMxaqKim9ESj/1S450K2teOzN8QIhAPzsJEDzkAVX+5S2Yf3PIWGsLOK6lRKdmkWbNAsu77Ed"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.328cb768_1540127537586_0.4436759201518621"},"_hasShrinkwrap":false},"3.3.0-alpha.1fc84f82":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.1fc84f82","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.1fc84f82","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.1fc84f82","@crave/farmblocks-hoc-input":"^4.4.0-alpha.1fc84f82","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.1fc84f82","@crave/farmblocks-theme":"^1.7.0-alpha.1fc84f82","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.1fc84f82","dist":{"shasum":"1b7641dc5dfb953cd6b047c242eeaccac9118992","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.1fc84f82.tgz","integrity":"sha512-wyHsC/z4/cxGRdo/cgOPn7oao4V4JJqPVC12j5FX3s1ho+pDgUe0bD+oA1xBgTLeRwgOVC7a5weZkVXBX3QAcw==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzjLECRA9TVsSAnZWagAABNYP/itf2H2Y+OBz4RO5TWFS\nV9K6JPtl0/rDi6ag/coQ92JLqb+c9isuL6uXwwIpcS+lrZbYNGKZ8/rO4dKa\naZlm36e7nSVG1y1O8cbOBHYxVsoMF6Xrb8Lteycqfs7YlyTtjHATbQZ7IngA\nOgaS6epsxVjWZSS7DtE+22JQDzkj0Je0TGqFxwlJterQJFyzsv5wGNCk+xNo\nXaOswCNY1vyKQ0PwZ8Osr9ZfRWkGgHC76WmTOmAthdhC4MNMRlF8dsF0/Ltn\nxGd3AbKSZSfiuy/UMiZxr4dUJDfq499GrXgn91KytLGCwfBA6rsBveBkM6zi\nA5eTehOCYFKPgx3+DPz4INhjuuRF/J/U4HPF+hoijZtHZ+RX5cNrdwxvAqYY\nA4Pn20RUitw2vZhMuAJjiapk0RJg2I7WkkMiqQNKsq4r9/lvsIStFEVGgFij\nh7pTW5woFB8yZddh7qTxCP5Aqqze9psg0WmqManCAbUH2pZCY/DtatiS4Bf2\nGixelDMDte8mMZoVr/+S5ztg/EWvPjjBpF2ClPn8g6PxaXNGX33O90Ebz/m+\nla3ilwFsrag9bjMNDzr0uxqAn+zYkLGeSBsLWqmcQZYDp4/qn9+r949RLtfJ\n9WVGN+2UrqYLn3FhZ9QMuiXG9RyE0wkEBlGYctn6byuapvWjO4FHmR/9hJoi\n4jzN\r\n=+msM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHwIFCsZSaFBOMUOhh3sZ38DEDc5gneux0NeG3j/YN3pAiADOvzr/D/CBsGMv2wFOyStTgmcQ9pDNGDkryQfG1DiPA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.1fc84f82_1540240067471_0.3337220184774783"},"_hasShrinkwrap":false},"3.3.0-alpha.54e7fc6f":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.54e7fc6f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.54e7fc6f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.54e7fc6f","@crave/farmblocks-hoc-input":"^4.4.0-alpha.54e7fc6f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.54e7fc6f","@crave/farmblocks-theme":"^1.7.0-alpha.54e7fc6f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.54e7fc6f","dist":{"shasum":"65e2e6ada07ee91ce766c238d7962dd421751899","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.54e7fc6f.tgz","integrity":"sha512-l0E8U3fqJIV7NZxLqlpnbOh1ATtRaewdG9bVSh7H7FnHk8zpJS4MLjf0vwWpuF2wrHw9QtVXJHT0yO09uqUGEQ==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzl4WCRA9TVsSAnZWagAAJ4UQAJf+swX4nhlH0JnOoC9g\n/c/R5v/U6vj4Zo/XRkY7C5OMzMVizQ2L3WAEDeqWQHN2eFO7EwLWBxRL07Wu\nTTRSJoYw7DaJfclvqKZYLQ54MGAScY03oZ9USjjswSNiltZZtq7hvsl/oXAB\nwhJJBXI5jQSMi6E2un1So0oWudJnDdcfxaVmJXbvs/+S2gD+8lPCEEPBKNro\nj4cPYEgzYq/YGmHIeBF5z9q8/mnKlV+x2QSUsS/UddrMy2UZ8wcjV1MQ1DoP\nrzb2733ytdb69eZUk9QDh0/uu0penmmn9Qy8TmqdKASn2a3IlYYQFkrIQ3xx\nxs5sXcucdpPeWvqz5DEr4B7OuebmGsdsyXiVdYuJDkFUHfnJhyAy429mTnL1\nQr1D4ezTuGFfV0lZLqrmfYdsTbn1QxAuuplIsbyHKWYA69KLBX+rrokqnThh\nL9HkZEgzpff9tLrQiWSc0VmFAEtyzukyl3bnptCR/UqNKocrv9cbF99GI3+V\ns688gM1dhQbudM5Pc0HoL6ti8zCjTkJqpq1zGd+6nksMqtufovlQN7m1tDTp\n80Yq+vpociCYWhalxeXtmcoCvDG3wXGH4BgqFatxo8aJFWU4z8BYWU4BjhFk\nEdZ8gaJr/3tl7NiYDI8rvA07MLHjrnBD/T9ZZFj75wz+c91hWxMvW29pxdN6\nt/s+\r\n=ETb1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGMwLmggDxfIZ0zL/vtznC20qWSFBS2Lozhq7dLYxAwiAiBvggZSGtqnPwMQTV7jAhMKlZ7GMttmsBChDU727tmjzQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.54e7fc6f_1540251158176_0.6747406769577136"},"_hasShrinkwrap":false},"3.3.0-alpha.fbdc2ca3":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.fbdc2ca3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.fbdc2ca3","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.fbdc2ca3","@crave/farmblocks-hoc-input":"^4.4.0-alpha.fbdc2ca3","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.fbdc2ca3","@crave/farmblocks-theme":"^1.7.0-alpha.fbdc2ca3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.fbdc2ca3","dist":{"shasum":"06596c11cb91aa1416cd136575d282d0f1e7bd53","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.fbdc2ca3.tgz","integrity":"sha512-VD+89QNl0n2K+sYkBajHOSIIHZQU3BycuSdOATvNswf0nGLCPRfySzGT/LocKXKjz7Zj958Kr8XNPnE9R47EIA==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzvUTCRA9TVsSAnZWagAAEUsP/RfoSfyoesahdCt62qNo\nuZzDo/VoGefXUBUotaXb+8JvgySYSOplGNOspeZT32xyaMbicTt5jLDN0cUR\nEGhV9EeyTPMkMo9DnqgXiAI2bc9PV40cZnZnUww4R5VtcDLH6JZFIvQfhV59\nQxdiT0aIXJrMMBK16sYdUs6eqyrG3B9mmZ4NzKZpYkIOmflwnJwk+WgYXHtD\nkRky/72xaLhY4LmVFqKwheHlCxKFlOwFsPKwa/2/GhrTU2fRHaiO4gFeCBt5\n/p0deAwopmzROwIHSeWIUPi9Kbwv4IfnT/6njVtiTQkmRSlM/TW06WSiALeM\nh/02RIj2ZE35mbS6vmpzPbmvULgvE6hdSWHxLwrlsuef0GqahwaNoEO5bIKY\nXjZM5EK25cga7tvM/D+dnBU+olQ7lxPFhv5Q2NvO0lfujSOHTtiUK+YO4DSG\nsFtaBDawkhFUzRCILrOi5T2k7YawyrA9rm/owcSA2+vZtf2FPg91aneJRrti\nuFol82iXUzKFvyDKNGadA/AsnlF9le3uoiLeZWE2ZNOcU3n4Xx6/AXoiW0pD\nU9FseAfH0fWUcqLAgl2O38iDYQjqqiC/Jf8dZvJ6dI/BR7HNI/kH1qT9l0Fl\nSJn+0gDuDZShmTMbkc+ShxbfbjDhV3q/HFQqe7VMib0aIVVUrAy3+CQiTVW6\nBJom\r\n=HHdT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCUg/zkv2d/jc4D3ZKIJu50eeN0Ubtbz0qbmjKAc+Qk7AIhAIsiapDfL/GVxbWEMzygECZy9iL7+KHDxU446b+SVrlY"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.fbdc2ca3_1540289810444_0.520747296174038"},"_hasShrinkwrap":false},"3.3.0-alpha.08f4e1e1":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.08f4e1e1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.08f4e1e1","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.08f4e1e1","@crave/farmblocks-hoc-input":"^4.4.0-alpha.08f4e1e1","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.08f4e1e1","@crave/farmblocks-theme":"^1.7.0-alpha.08f4e1e1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.08f4e1e1","dist":{"shasum":"ec5026c911870e3754065595f886d8f3723cb281","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.08f4e1e1.tgz","integrity":"sha512-yYEOPwPDMUJgr1sTVZk3N3B2DvK6uVp/nHrxJ+0mKqby/DOk03gsVXOLKAt5cwV/RnJJ6Bmd17RKIkM3HdNz0g==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzxnCCRA9TVsSAnZWagAA9TUP+wTybepMb6MijzsiS/ag\n6wDlJFGE2q0M/ZJ1akJkhRZUwgr5amp1F8jBNWm6pl58d826uiXVcmXdO2tw\n9RxFT5Y4gfTwfJhEBZ+oORnlz1IAqbWr0tTLAJTK3utFqUuvKqlKKrO3KdJL\nkQ8bD6NP3jxs+PKlLQZOvUYUmF9b7Umu/NiNTbCkS7UHNK9dPfVtkQH0P7Wm\nX5xmIIq5trdrge5vGmNHcrL/upRYdRo84OyBkW/vsmIQ4TEoJobM8XUk+aB5\np7Wn+rxYRYwAACQKxeM2Hxi2mUbqUmaf7Hv9HW1WGRJQFjMfscyLR067Rw2u\nhcbKKaWdeVlyY9slP8C/iyrY1DX8RPkJR1mp9lQfT4Xe3fz7drHd9PN7HJLx\nAb3p8Q2EpDNCSNOgXVJooNoeh36m20LBPBTOBvG1PwS4sDpwWYplxVzhwGNw\njVJoOBwsUPcNptwSkhSeZw+lOTXdSVduGMgQp5m70JWXv7JEs4v9Lo8ZR/DW\n3Rqt93k3xeu2wR+DgvVcH5RIbo2/3/4SCnYNDEpLlCVaZc/CkWnlVThYamKa\neJExB4um64J0bVfktEO7FlVWfvd5QAbTpPA+OuX3FrXRTQ8W0+iYzRw5Mb0c\nniwDs52VZ2oIhuCAMEhlYw/07NKKtn1J8Xl6uRyP7/0OZF+wAPmxUcuHMq1/\nz9xw\r\n=oyGi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDpT614DU6NL517lX5N7k8N7pvglJqwvee7fbtxPET7XAIgN+bVuA1O5b27GKi7ar7iYDjHOCkVEzeB0jUIcOlkgmM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.08f4e1e1_1540299201281_0.48041765081794807"},"_hasShrinkwrap":false},"3.2.3":{"name":"@crave/farmblocks-input-text","version":"3.2.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.5","@crave/farmblocks-hoc-disabled-tooltip":"^1.1.13","@crave/farmblocks-hoc-input":"^4.3.2","@crave/farmblocks-hoc-validation-messages":"^1.0.3","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.3","dist":{"shasum":"3a9fbe120896b95fb33010cbf44af3bb75f341a7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.3.tgz","integrity":"sha512-vHXyFAJKDefUSz2Ap0nsguC+JP+YY8oPwjCAU81v0GYo4GCE9A7yC6PrefpfxUngQD2HpHojtfMeV2/bh6bDUQ==","fileCount":13,"unpackedSize":56357,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzx5vCRA9TVsSAnZWagAAOUgP/3oy1pv6d6SfT6/3lXyi\nPtjGQe/pkRlRpTCK15PumNr3PFMCKzuqCNuS2b0Zym3hdpi1PAeRbTLL2BqJ\nWO+SjSYbimDXt/nZslRg9sdlfzXyvwa58rckr/c0nTiGx3XQFIJfgVNWu1Xx\nq7xErNdxnvssqACo+9aeYJ3GnMUE0dipuAaBFOyu2eTU9m/AM1/rsg4hPWgL\nTL675j9qSRhThEEImCT5Yn2B4gOLIUrXzK+MoK23kYwx8MxdDGFyr8HhEf4c\netMSFQxVqo/Cx+FPzrXVQPyNr9yDN88uraFQn1Pi7wQ4d/OHnGq7uiAgmTlf\nMh555rGGBsMLY5KIFCgeuLOvaZh87BewOij0+Dg/M55IMn2gz/Zq1DJ8oq4V\nO1txL2N7nhuAgk/dMZARb9PfU+7G6enaznsyEWqFtkv1KHIysTIgR6hMwbxh\n5c3YdYWxTHcwy3becBqklrMmQPtys+zRROfwHCz9/dYp9BQvVE4WrUwH1hLV\n5nxwzchUoS2n1Rby0BV2RRwNed3sJhDiZukmGX4kzOPIYkGPpIV9f089iP2U\n++RATUJfMhCu/aD0rA39ReCR8uRpcXO917O0U2H5cvMMOV5+RBhVg62ML+Lk\n8zgRjiKYh754Rzn54TmdfdGLS+QPjEdsmvVWCN/42DLekN4TlXSGfeJ6Y217\n97Ph\r\n=msBE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDidJNy5ac8DFTjdFEhFPbgpevId/eT6MN8f+js45pQGgIgCwRYP18+XpaV2cpV4/Q15RTc87G28mWtMMqhm+F9Fx0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.3_1540300398394_0.6913570686395434"},"_hasShrinkwrap":false},"3.3.0-alpha.9297da9f":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.9297da9f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.9297da9f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.9297da9f","@crave/farmblocks-hoc-input":"^4.4.0-alpha.9297da9f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.9297da9f","@crave/farmblocks-theme":"^1.7.0-alpha.9297da9f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.9297da9f","dist":{"shasum":"7b47d0c6565659eb9db681df78e7b71eeae72ae4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.9297da9f.tgz","integrity":"sha512-SrchBdy7W8v1o7/my2k2YLrJDS6W3i0cL9XN4A4Z8da/i7O3pj+ewAsLdSRwXZOsIaRlZvvbMmvrRdVj3jcPPg==","fileCount":13,"unpackedSize":56490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzyLyCRA9TVsSAnZWagAADP4QAI1AwF/XQ1QlRteCX5ih\nsXfjfQpL4+/O+VX8lqR4CZ8ABlYs3RZ2t6BoJ0Yz3lqOXZ2eP/Gb+WbypQ5B\nW2sz8OqJ6uyp8doqU7E6F83Xg0xHgNsK0Zl4KrHq+sRDgiTaJi+ozh0wlT8X\nBeUL/ScoN05M2hCh+0fjSI618uSUdL7BsroEFc+uhgk397sPn7n0FCB8p1yj\nsZ9KzTMx7prp39TRQyYcovkV9zc4lb1e54nXI12J+3wPJ/mnTF64bXqKtI6p\nTpdMUfS/6kCf3EzkXspU1ryetQcdwy053r+5W9UaFtolWUgJ0wiv0PKMk51o\nkhiqqGzIK6cPHFFTkIEmX7GhMXkMkhkBd4Qhf0pG75rqJF14xs9mShY51fbt\nJlxCELOJKnST4S1i+96AJxR4Um/hcOTwjhC/zmCzGTlj8gSMBLBiyIgpNVAD\nORZaMpzwNXlH69yuDEao5R3Plf0z7PSjMs3Ys2nlMUtcVYv/1NukoZCoZBjH\nadmQFFf4j2vA0rRZR3DAb1TIGVQUQswN6DCy6qPC2s2Q/dAhEf4PTx//FnR1\nbGRvW977VcvomkyajZLWmadtXoacnPxinA4yD4JW6rALSVMgzP3P4UmZ20aC\nUbW2M1OMBzM665vmDU1w8mUHo+OSFxR1I3GGO537gfNU09oY4Zjy1rRpAC5K\nOWFY\r\n=XLBw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAcmEmsEDAM43R/fLPOWFhrSWHLbOWEGmNThdayTdzSJAiEA35AOfqfdoXxNTWezWtWhiWiFDY4l9MGExAQiFRbePCI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.9297da9f_1540301553188_0.6989197574435613"},"_hasShrinkwrap":false},"3.3.0-alpha.c0ecea5d":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.c0ecea5d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.c0ecea5d","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.c0ecea5d","@crave/farmblocks-hoc-input":"^4.4.0-alpha.c0ecea5d","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c0ecea5d","@crave/farmblocks-theme":"^1.7.0-alpha.c0ecea5d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.c0ecea5d","dist":{"shasum":"642628e111f84c1968c7c145ce841fd1166b7b74","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.c0ecea5d.tgz","integrity":"sha512-dWQ/5ZDQBA2DlbxxEbGqYnxL6SJMMmHu/e29XakPPS6P04I1i8YE9gb58MAWkfs6x5kNPAryWdBVaQTq/F4/aw==","fileCount":13,"unpackedSize":56730,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzyVoCRA9TVsSAnZWagAAszcQAJWCPN2nHPJkTse6pM5C\nqMftXQEclrza9WhggAWQIpkZsZiJBSl3MA0XdhZA4YcbY2oRyhcRW0IPrgfB\nir5plKKCGLW3hAC2XE6k+tNvq1zS7wqgJZjSS7GHxxa9vNDpa1AD7hEaXyzm\nm9azROyisu0ir9dl2j03uisuu/vjzZ/7w2de+O82J9+yIWaBs0WAUNctxofQ\nQNR33OTmpKc5DkCn7I3penRlttDJBTJFD+6UyfgZdMGLHS732CsF+n2d4CSq\nVu8OSxApCPYm9ogyFl6KW/tGkg8JwJ+2W/4er2K/sfLZNixyC+tMUfzia16e\na/51e/WhL8vDJg8liBrvBwelhY1JzVJkQFNWIpDLcKGOhRkW5hE2ETYPwF+1\nFTmedQKjHUaPnqxs24MeZgjthx5Dt5RIDeis8dF///6VNNHN88BStR3QVGIx\nBMLISDg09/jUCq3epVT7WPbW5KL6YHQW8KmSSnHKjDL2gLcmAlN0pr501KYR\nZixQgykfD6QKJaSI3FSHx7XSdGTjeV0ei0SXQsbFDImqP2kuMIwO4kLSypcB\nFUTl6gFYf4WqPqPhKHvBTDVtsyEHulunfIY5YIAaBtNb6y0PnCZS+PDWfHQM\n80fCUJNM3m0I1Xok6e8Q8vT1UlAMXFSgdTMAaYHfeiGzk5IpZSmdjsjnCUHs\nLfKt\r\n=XhK7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEMfcuj2WUrEVyLN7hxeHskLPICMvxycErvi0AXkgNQLAiBtEGgYrvaUSmbpdS5DmiuCagRxzQU3zKflZiI1kw8m+g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.c0ecea5d_1540302183272_0.561560133460637"},"_hasShrinkwrap":false},"3.2.4":{"name":"@crave/farmblocks-input-text","version":"3.2.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.6","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0","@crave/farmblocks-hoc-input":"^4.3.3","@crave/farmblocks-hoc-validation-messages":"^1.0.3","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.4","dist":{"shasum":"d1e1373642fe7f1bff22202c220250dfb176134b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.4.tgz","integrity":"sha512-wR7f5t1Q1L6+J0AoNowjCbzvLiuE6aEOKV3KFJktqMzJfOxs4A0ZQNavRBqHV9H5t5eJtWvfsKn7nA0o3G4XCw==","fileCount":13,"unpackedSize":56596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzyhjCRA9TVsSAnZWagAALYMQAKAxOXmB17ryO6DlDyDl\nYHT6+9N+zYgAzJkBt4Sd23g+/E31t5VVjUkrhKbyuqeM2W+KJfTIlD1yCbqy\nhpJmsj5zh+yhF4Wm/IHc3CUaaVUrqsOK29JIBfTczSZ9LJS97EAanuTEwMdD\n5vKsF74Ou0C9l9u31oHgTvGyM/Lw8StZVrgZTzeseziQeg/Ggf6fFoXBxV8F\nlUCWQVOfPJN8bJdKoPlYvitnkhvcUyLv3mLJP5ShZCFWDwGfbky1MOh4/7pK\n2UI0vB3zPmnCzoQgR4KNjwcdO/pmJXsIJgGrDssoHM6C9pY0nP4L8cpZDNM2\nD5wT5I2qKdHWmp/0MzR2LzxIQNheMUB9KOOLnMA/BUhFLYPX0dwAQmJMQoMb\ncsCBJWfq0zsJTuAxh8LQnBuuFiB7jbTANoxMKpb9l3XOrBF+NbX/YdqrZJJo\nZ2nWa+OZ4E6SazvZkr6V0TufYIUaX7knM3iv6olzXcx6nKbJDQMhEmxb9wc4\nES+Wpmg2JiYK+ywK4dXQDV+N5F4lyWBV8lmAJsPGpSON0E+zcjDKJJxNSTE6\nQeOrIf9+Bk+QmxUl+W2qP0/JNzgxgA/3WW6Fx4tdyMHgwQd7yCR5xW+DklmM\njOKr7XwpBm3GMXYvPmmR+IDXdv0s47sxK36w2pmPKqaEUi6XcqMEPFZxdhCj\nj2E9\r\n=pk0e\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB1Pu47zqJG6IxBhJPU5J36adQJ78f3DRTQ38phpgo6iAiEAu5PER1YhNR/DhdXnJ/DFPU50eOb8JRS6uvBLmaoVNoM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.4_1540302938764_0.5276208630519073"},"_hasShrinkwrap":false},"3.3.0-alpha.75fb7265":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.75fb7265","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.75fb7265","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.75fb7265","@crave/farmblocks-hoc-input":"^4.4.0-alpha.75fb7265","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.75fb7265","@crave/farmblocks-theme":"^1.7.0-alpha.75fb7265","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.75fb7265","dist":{"shasum":"24d09d22dc73369760abbde502ba836e1cdc2eff","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.75fb7265.tgz","integrity":"sha512-wyMg5TejbI5YFfVfeg+oFbL339kyZUWYfW3uIwIHhlN5dg9qvu6Wtg9dSiViUhaVvwg3XSN0qCfoH1C3DN8sUA==","fileCount":13,"unpackedSize":56970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbz76sCRA9TVsSAnZWagAADOkP/2A17WFTfYHfGMiEzgmt\nQOHX7uiatvmcWeMKq5s+8nNkOs3qNnon0wPgronrx14wRPVgDJYAOpdDMuNl\n7any1tIu6Z1JMWa0t77+wMY6MY+ACeMUHShXl4RNgz06H1YoXwTd4fFCpRMM\nOqK3cB9jrTF0fnt35/9NQIZJ3PjRAp/I75ClzSMmm59e3NL5GTmw+5jmS3iR\nvBRHduFQOvUv5tk/hq44/Oi0/CfXuxNZmxiBehsRctu0ehsYRzX7gKS/P9PH\nYcPwHViqmIExU17qrwUIBznLshRPWGY36xGyxSVVYVjfMTUJ+XKluJmgF7UV\nUryz2zEcDwvkKSag5TMeC3qw4uaZRn+dNCrb8NLo9HJXSU6Vf5uJFIAMfCgz\nubwZTbiqHo0ZptR2QKqjE7Vf8mnawnGn7N5NHT7TLXvPttQB+nxn9N31biau\nkJPqFCd6wua87Ju4V0iFsW3447hKAkG9GVjGlc3Rp+VohLS1fN50zFk+vHIV\nT6A/FyeY691xVEqgbb7jkGCvtC085xnz6uWQd4Oh+twohnIJarZc/65h0E2p\nj3H+vu0DPl9aLIDqtofVt/nipk7hgpdYQKpnuitIMR8N507DKYKQj0ZVgKvq\nBVbpOBCOw9bAIAehDhLBgeDThxPFsFvZhievA+muskP4aTfpbg0YQWm/lYjV\nDPi/\r\n=eTDZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJOlKGe6eAazAWkJOlxcUV1H/iaIUzgKtHd+FCrtUJLgIgFbBjBQ9nxBZHFNUQzL4USTWN63vaPzZp0IaVVm5iZcU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.75fb7265_1540341419448_0.9136956676277419"},"_hasShrinkwrap":false},"3.3.0-alpha.413ab974":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.413ab974","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.413ab974","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.413ab974","@crave/farmblocks-hoc-input":"^4.4.0-alpha.413ab974","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.413ab974","@crave/farmblocks-theme":"^1.7.0-alpha.413ab974","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.413ab974","dist":{"shasum":"e4135f61625df11b4c11336cbc642367486c8504","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.413ab974.tgz","integrity":"sha512-SR5wEqU3cJrGHMseBRVgVSqBxWCD2jXcCAdXIMnsNCvhU+ETiA3Aeecp4j6M3TgQ4wtNkwDOL4INO7p35hXsTA==","fileCount":13,"unpackedSize":56970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0HU5CRA9TVsSAnZWagAAoQgP/A1FqKiVePIk3J30akC8\nakP2rJHqfo0nig4oCG6ivTHeNQ45osT3iCTPElXPDtmAeowiqdLrFx8k4J8Q\nLS7mTVpCmyFhzA6rEe96YiIKPbQOXSA/8vn+Brc+WciEKvSAWbeYhrcYsEa7\nNiXQTbO3g4G4sfkpJT8mPPxkAChHe/aOwT0IR1sT8WggraxiWfi4PSiVEmQO\nEoatT4JdovMarvFOT6VTFBDvhFGazz+NQNVpvNXm6uom2qi7mE4yimF8lqPD\n1HKx37k7y3KJkLiUsiz8xIAV2XP6lDlEuV+VvFESRf8YV2NOVy14se3rofna\nCDnwgafHw5J0UVZN3pZcqfsloz2cO4k4nF3jcwxngOIaS+OwcGKoHYxgljCT\nFDPe3YMfVf2/KMbXTK65Bd0BghJNVJPNPPoddcuN7worIsqhjvAAYkNgaafT\ns140Vet32Gg1hpJxr3IJ/YtQACIGroulnKJqt7bLFAEKRk/JKeWTVf/fP/tA\nbu7anBJg0nDAzaOYoKXf8orM3F7kFSk17Sux+G4rbAhJgMCcwei5FyoCvq+r\nTdgJiUD31q6H8u4DFD6x9S0WbNlKtg0qJgugH75zuP6hx3Lz9kEjew3YF9Oh\n6I0tabmClyMuu9temnxzi7LsnTeGwEWWIefC7X8uezHH1WQpZ9nhy0ufhnsw\n9qXb\r\n=YM9E\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDWxbEoD31jMXAZy/LFeNslXmyTG+UZ8NOGjrJpmNN7RAiEAocN3EIsYbjLlNG5pI+DASI5KspIDRP/piYhle/qm6jU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.413ab974_1540388152815_0.961980142339516"},"_hasShrinkwrap":false},"3.3.0-alpha.bb03e5a8":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.bb03e5a8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.bb03e5a8","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.bb03e5a8","@crave/farmblocks-hoc-input":"^4.4.0-alpha.bb03e5a8","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.bb03e5a8","@crave/farmblocks-theme":"^1.7.0-alpha.bb03e5a8","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.bb03e5a8","dist":{"shasum":"8b8d95a199d87cd49ca17c54ed079d0e5afde5ef","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.bb03e5a8.tgz","integrity":"sha512-qe2+BEGp4rwUgh+A5GSVfIpcIErgyR0pnU++StCA6AXJy2yGNvV/vR7azM5CTEKyzEhFAEW0hQrW+Fm8Eadd7Q==","fileCount":13,"unpackedSize":56970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0JRbCRA9TVsSAnZWagAAaBIP/1HNZz4cjGKicGlk6X00\n897nhWs/h9+8p9iU6iUew13mga1VF5Huc/2tRvYMKSbgGzwZRHptbusZnTMf\net7GcmP70AG8hw8Yi+iZQYgrFlTUFHWpWtQtyHn7A7LGKDfBsi1+jysI8wmw\nL5GVi0fMeEanxAMBJEEFn/CnmGDlAXthcArFAS2PFGxb5z7FTfUE8piCIuY1\nbbkSfwvaIS9sPC+W6EH1sUWrVn6vDUfJLchFNvnz8AK6UcMfarfnngOuGVp0\nUU+2i9CIqy7y2g3SI63bJ8r2BAudTpd8JBqsydTFe2lGziJ/vx1WlGETMbm1\ngn1wsxBjhLU40uK40diz6EEwQY1HOnUee0cMiNu0GCZcfMCgLy0h9X+7LVE9\n86gmoThrPCIRfDuSKaGSN0wJ4oO4Z2cOCUi9X4YalXjEtYjXpyQQ4roZK28m\nLI/SRnWmPmsURNFckgKWl0Ra34IfihZ9enXbPOrlW/KAe2Q0FX0jXrw9qA4T\nfX7LAlR+yzN5/gl7F5ptQJv89XkqI/b6Mds/JJ3vNwbSU0ase2o6BX33ESKv\n+hfgLqG8h1e469HfOGfMR2Wr/EGUI9aZXh8GE6aXVyV6Qiw5SEvGp9fDMyaZ\nunDAabEdBz9rPt8r1JAOcxC1h81qufVMF4H5smH4qTmklcyG9W+jN/7dwg1n\nN6TZ\r\n=/XT9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA1kp4oLobEVXD3Z46MtVyqYo2QiGDoSaC0/JFcM1zbmAiEA2jOidh+oECVvxK7gU/QJWDE3zTfsr6MGOAtW0GWyM7E="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.bb03e5a8_1540396103459_0.9459507739019375"},"_hasShrinkwrap":false},"3.3.0-alpha.1ccb021e":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.1ccb021e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.1ccb021e","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.1ccb021e","@crave/farmblocks-hoc-input":"^4.4.0-alpha.1ccb021e","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.1ccb021e","@crave/farmblocks-theme":"^1.7.0-alpha.1ccb021e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.1ccb021e","dist":{"shasum":"639f8f6d7245c67a3da17b9f9904b779224d6ae3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.1ccb021e.tgz","integrity":"sha512-qHloZ3gsgwEk/VSorOAiUhlKRuJ9BzNTfizDhW8sc7YfhpUDmdPictH7mosLngBW7kw9uX+r6XBLljXCJl71Ng==","fileCount":13,"unpackedSize":56970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0JxrCRA9TVsSAnZWagAACgAP/iCWk5w1cnOcOUsFAtGA\n/N0BNF2y35+jj2c7/fqie6pFfx5ZhXeCTOvVZSzLl+TdJp5KbTDU9yVYQGQb\n6mdEhbht7y90W3q2zkZYAMZfOKvYqGn0jVM10rIX8HrACaHOljjn5WWanFVw\ny2sCN0mZYPrXaBp726dyeO2AG/91oadWcSDqqRX2BtzNOcBewCzKk0GIySVB\nloMpLZ5/iQF96tqLRPZx0w+4wn5QI3qA5BWhLrJR66la+Gva4kaX+l3/vo3O\nikCrb+aaBxwVNUHEYGlBlrTVkiQEMtZ1yP3yQlAnhTSqaqBQxREtgR4npmVm\nsSP4N8bHbXXYnMvhkd19W7FXXxdIZviH9BxQQe/QymzqhL5HuAfOAtQC6Z3/\nht/trbIlOcKWLoX/nni5keSMqiHqvFH84/7yO2e9pcSQs3jyQGo+KePFBrqu\nQ0AwcIVn9eCCO+CXwFxgSlgLkNKGbDSblh83tTPgvhNqgIcQQFszNo2x5gU5\n6VFJKKKTp4tO1Yu4abpnVyL78r3X9rQ/CipLaCLMMN/ZJbAWzwamm6GDYrmT\nEoe2CP9n7BpQo7JwVbI58ImItE+dYBntBS7ZNZbxC+A0SnljE+LR9ZS5Ulsi\nXGwlNnYxLyH3YRsb6K7fizmB/eE0KCQjJ/02bPq+/0uGHPEYpa+ftnC05jOh\nW/pg\r\n=bcFI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/3kAYbozpHnpJ2CkHA4ew+rX5gVJzQ5VBrVYwPn6e0QIhAMgHkOxbJDOqUwL7gkCJxe8jUUjHehNDfPmgTK9+WfBn"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.1ccb021e_1540398186290_0.7229336167790457"},"_hasShrinkwrap":false},"3.3.0-alpha.9678cb5d":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.9678cb5d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.9678cb5d","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.9678cb5d","@crave/farmblocks-hoc-input":"^4.4.0-alpha.9678cb5d","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.9678cb5d","@crave/farmblocks-theme":"^1.7.0-alpha.9678cb5d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.9678cb5d","dist":{"shasum":"d5fa741595f9ecdde87f572473e9dfaee581d853","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.9678cb5d.tgz","integrity":"sha512-WizNAJm3HqEOM1nlcnCfEih4FeiW0Srmn8LRaDB+2Mbr5zjXphA2pUAtXNB9GBDpaz6t7MNWXpicEaGb90KRFw==","fileCount":13,"unpackedSize":56970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0MJyCRA9TVsSAnZWagAAelUP/jk8SXWyQ2GO3DrP0weG\nvmjRZVEQdlgAWkGgH2ZPAKo+QVjvSHLBwCsjdLz1lzRLTJXUdL0xxdd+6mrU\nx4OY7D6+qgtMGDJS9/O/Fsmy4YBd8Ga55HdrYpuXcUb9ROorIHu1QOINuW27\nu5VBoD1e+UoH+xCsOd4o6+hhjgH4a5XNzFgKhsGijsmQMgnzi9SDXOe5ws7k\n55mMfM4HyyCft4zoW82xKxqCuDWjS8/QGbe6TKQNfRsGcS9xQNE8GUmPKnTx\nKi22A5zMegzrenLGzh681yhMbVzvPmGz5Mr0mq9U4H2MCF0ZMOVDPog3A7IB\n3VneHaTmrhUBzoforxOYVP/DwcY3MNG4OBdVX5Xkq6hzYveEcTqYGxGs/NZW\nGaZTDZP2JTnROCKNc49VnFLLDnEgvecgz6c2OGNVH4D2JELhPSRsOAkg3C5t\nLNlRdbMuYQzNcCfLJF4RXdkBHUvtFlxy1UbZMPLeGLriVLmNxSEiUgE30vDx\nVIUMMOOnIuHmnJ61brFyCf4+GfR2MAy+WmxkphGACqhIR4lPmKihhwhuKmJ3\nuIRIpeGI8fFhWTlOTnVZA/LIbdPZY87Iu92N5rwD6I6suIVJJNNllXg7bwLV\nlU3/oYbwclkQE1+TrvF84sghbz7kHhlbLgAfn1FXsOtCKm8ah+1miM0h2Lky\nA5Hk\r\n=/8eM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDFj04eFeGlfNYWXxTuCFvpmCenHYw5y1vZIULXjm3ziAiBdNOR1PbpcorsOisxuD9G8Gt+rbTVgmquz4sq6DlQfvg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.9678cb5d_1540407921772_0.16065125141229086"},"_hasShrinkwrap":false},"3.3.0-alpha.7036f1a7":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.7036f1a7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.7036f1a7","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.7036f1a7","@crave/farmblocks-hoc-input":"^4.4.0-alpha.7036f1a7","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.7036f1a7","@crave/farmblocks-theme":"^1.7.0-alpha.7036f1a7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.7036f1a7","dist":{"shasum":"6f55aa5355474b8b6e21fa318acef66829c8a3c2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.7036f1a7.tgz","integrity":"sha512-Vu+91Mav+wdchWwbvHR5zGFSr9tAwcmYhwQqICSHn3sMNG8oswerFEhv0S1cCee/6vesX1yQtCn3+AziR3lxIw==","fileCount":13,"unpackedSize":56970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0MOKCRA9TVsSAnZWagAAucUQAIIH8yUEpMNIn6cxoYow\ntoL8eJQHtPQgDTD5Zjx39iGwt7MLyTtHM+tGPrKi41YrqX5kWUE5X6BuwZeW\nT+LfHgiyFbJH8RiqUQ1Lbuu2Ws4SnyUwWoz/iv4OuczNmMNkhI1ohFGCN0U6\nuQC97pvaxPfFEVrPv3d//0emD4BmlzmsRn6DzV0iyyczat0QUsNmdISCHUEu\n+3FsbUMXJ+1lUJSNp7UEdVkhSXh8ZalV2KL0o4KMmEll6ZNvRoqdmNvRKXel\nOUu1FE4YXD+La3rc/lM7eXuLiq27jM2Le/QBzZU+i/FDWCxL1+qeEb4CZxBs\nnFm8oJG3QbMleT59BWtfYdVU8fzQe2SYPtLyQoBB/ET8Fi0iwdbBaniv6eTW\nvUhxZ1JGOAwheoMIF4Q/4w6cVcZ7TnNwHpL4Y0K0Hu5jQbZ1GSt891dX1/Vp\ncKSi2U0yBLfEthx2LgVoYh6LK4JVPLL9jkxnw44dzezUAugtX0kSdgZMaY7t\nzdOBLd4NwtZ1ocE3WNrxGRDc1xls12FFmQFnJWUV1oETnNeKUHsx5Vv3STbv\neCP2jWqzDMN1Stss8OuRinlQ2zWvEo9Wh/lI2r3bE8QUQooZeiQRFhRPnQGs\ngXPwEUBBTSUBG7FD/TmNeQXlkvKHVYLkC9VqvF9qtribuGGyPeIey7CQvOd9\ncCiA\r\n=jvcg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDOHbCF01C1qhV1Oqqz9yRA5zzbBtDUfuqp+oWP0n+mkAiB+Pp8MDrGZ1GnTnf1da0vHk2Zs+/NvTScaE0ZbFhnl4w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.7036f1a7_1540408195264_0.5785563471815556"},"_hasShrinkwrap":false},"3.3.0-alpha.8be62263":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.8be62263","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.8be62263","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.8be62263","@crave/farmblocks-hoc-input":"^4.4.0-alpha.8be62263","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.8be62263","@crave/farmblocks-theme":"^1.7.0-alpha.8be62263","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.8be62263","dist":{"shasum":"305ccfa69fc2309277cb5512a93b2a32a7cd8232","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.8be62263.tgz","integrity":"sha512-a5eBHi6vzysBitjDCmta31e3HO0o87fIoVLUf1zBLghUvOGJIAQjl39rA0+Y/Pygx8ycNDaUSe9r5N4f8OjEmw==","fileCount":13,"unpackedSize":56623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0hOLCRA9TVsSAnZWagAA/vkP/0Jp1dAeuFLvmuere7ZR\n5hK8nbDH+mkVIJSTAw4SP5o5Ei36e6mRBJC55gNzYoUavGmjZqASX1zhGPlv\n6UHCEccbk7qcNIFqwL+9rg+/zhVrgfE97aEz8REUGRZmB2EuWNAUwpFKuXk2\nQTIISB20zJ9dP17lK5ufDwnaxSbDYtnyeGNYOXASy0Q79jGRjBJiDMfHAY8Z\nsFyNoWPBjV1jaH9zAz9kqF2SyPt1usF98Ef4sevyMfzJzME57RpoeY8kKxe9\nnl71srshf+HFe1IL8Qnkxx76Xd7luphd5lZ63YX+OFdy49HDp8UyK5S2JKlu\nWocgwjvsjrdEBJl6V5UAJMDnniKZ6UN3TQLt/qhwOYMaxA7H3WDZA4jfDo93\nRFo1UqSAT8oC44lKmOYcIgDIUpcnf2bRHTjt3Lrv8XpP+z1hzWxeNIH+HS35\njzYPPFTnjnfg/jK59b7S4KuP/Wuvdhr0xfDwLem4R0oBONjZH/lI0nP86egk\nm7h79EUbkcAWAV+0cMr9e+ilSsUScd/c+IlT2ouzGuJ0QhG6CTyQNCCQxa2n\niWGWB9N8EKU/KS/RxJ1EjOGXjvW9/nKktaeodGxEJx5uuzguh/wyCQYAfuWg\nK5XvF+gQ3fyod/MpBOSiD1za+NZdvVJATmSf5d2ekcBIFv1vwT42h28BuFFa\n5lNu\r\n=zdLF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChJFNcUWo7U3bYxLyGEjXE5NRhKuMkx9AvPQVo73BwlAIhAKIEpGwaJE2CFFdvsiz7vhMNxG1a7fj8w0tm+4NtcPBM"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.8be62263_1540494218641_0.9591810473684128"},"_hasShrinkwrap":false},"3.3.0-alpha.9f9ad290":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.9f9ad290","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.9f9ad290","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.9f9ad290","@crave/farmblocks-hoc-input":"^4.4.0-alpha.9f9ad290","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.9f9ad290","@crave/farmblocks-theme":"^1.7.0-alpha.9f9ad290","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.9f9ad290","dist":{"shasum":"ff88948680951a7f71a6571b0be82a57a35d4c84","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.9f9ad290.tgz","integrity":"sha512-Htn43uI7M+Bm67FkeSxCypu/b5MVnhJ5h7otxByYqCa5ueqMQ7MWINfm8jY8nPKt0/ZV8+fU9VB1KK7cReS0sg==","fileCount":13,"unpackedSize":57103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0hV2CRA9TVsSAnZWagAAhh0P/1zgH8ZjTaxlZmE5dP+Y\nidpAvgIVPHKeNfwT5+GsH49rW3k3dGCwa7ha+xm6wX1ATf6C05esrYkAP04a\nu/qIvi2UupTEmtb1uUzDXdGdp1w9qfggdYSSuuhJPt+CAHd+t969Me49/JTf\nMDYNz7t3sjQgT5y5dY4aEZ+1EGjQCvrUlsHwv+Jdx1CnUxxxYAjF8x/uHKot\ngO26jzmBG2c3lDYeCwhGSe4YQ9+2Yxxo4EXDKAL38MMTbYdebYx6mn6Td66Q\nu/PH8rNUICvAD1VXklauSd9D6hE1QjxxrsvtCgqWwUCYNg4lxVs22vOxsLSL\nWe81GBO4a8z0eBno4l6cgHAQWDs/3gVMectXgUS3O2kf29zVQxYYdT+ghJPP\nlx+vC91h79CEu/KB+ApsE/3fVm9OAGVr+VjvDv3/cBAuxFfdYL0M0CoOSAiv\nhGoh3/D78I6RzugDCZiSSEV3Bw853BixmVBDEFddnaxCVuBu0DXIOPnMJc4P\nav846WwWlaPddok+UfAUyibOh1MXYeYIiJjEqdCraL9MTMGRNFej0ij0nEXI\nl34mGaTklAGF/ru6EBc1QZpdO9S5BMZ0KgwMbeaPMsaLFfJCBWXNAlvZ3HGp\nIM28NyMfkEet6HvPy2odZUjJjthVTZNYb2SaynmZdDKqk3hvKpz2CiJntk3b\n0PU+\r\n=DlRA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA+bYA4hWKMPkGJkmN95UoSqUooKpzNiooGW43HaBgIPAiEAzDhIvJ99Q9taob20mOW2tacF+4YqvyminZ8IL/wylHA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.9f9ad290_1540494709969_0.6221360707366799"},"_hasShrinkwrap":false},"3.3.0-alpha.b060fd51":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.b060fd51","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.b060fd51","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.b060fd51","@crave/farmblocks-hoc-input":"^4.4.0-alpha.b060fd51","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.b060fd51","@crave/farmblocks-theme":"^1.7.0-alpha.b060fd51","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.b060fd51","dist":{"shasum":"7948eba40e6d2e4bad6a3dde9f5417a9786590f4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.b060fd51.tgz","integrity":"sha512-aQynlPwbSNh11c3TcBkSiPExXo1rQVfBN2ZG6yewNAdMZxEbkwgt2lnmGpF2oKLwxxqMyE6qcVhtHGU3XyyoKg==","fileCount":13,"unpackedSize":57103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0iloCRA9TVsSAnZWagAA4PAQAISYhp4trlmam7HdvfD1\nlLrPKCuhVb5bwqG3gNutDoAphO5Hob5qShwJUElSDaOImroKbIBVVlKw15iu\nnDD+yjye2QK2oVtQc2nZPwkwH0D/4RA49rBFuAnr9F+0XEscDzEYTyCXkkBY\nFW/ROevoi/BcvwBMiOnzeqdjeqIVSjPls3JKeI/GWOpd+9HhIepj3asECoos\n1g1OGhhb6ViObO9jK/zZnDYq7JMOL3pcOksIIYZ9Fp5tmJPqfq2IIRj+XQjj\nkrSHxa8Kgho8UR4b4nOFKqeJghK9+kgDe0a2C4U5gfX4VuOsMplshh5fiHW9\nAoiZ7Gru0bacpiQKjLR/hIOH41iw7ubCgm/RtrYdatNkJvN1E0JRyEODJKQd\noKP0lI7poZgGixH7qCA/jmpoawdkJ422z1+/jUoz4PwTFCWMzudMw9heE4TA\nTSywCUT9tdmpF8K2oKYpJPLoJkVhinq6dLf4Tovx5FcmRv2pHgpkNrgBPHn0\nNIlbv5vQDdKJjGmVk7+4puq57x2BEmdVrxGnWwlL+rlxS9fdh9y6uJL2b9QV\nl2z1XZUstAm8u+OGAvbn4DeCXMliLAHLGrjfUGfbR/HR/9/vwbkCMHQoCqDK\n6to0j1ajiQ9z7sDBFokcVVoSwtnZ3GN+ptH9VMOlnfRvlXAbgyRySw1TH5u0\n2DHM\r\n=lVnC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBi645ThxvnibRN99f+uWX63y6+ukW/Lm56QXPN2pxzIAiEA6uqEMHBJH3P48O3ioMdFz5iMKFB3St6jIUW0zVYS03Y="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.b060fd51_1540499816213_0.8854887259089115"},"_hasShrinkwrap":false},"3.3.0-alpha.e9d1e49a":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.e9d1e49a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.e9d1e49a","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.e9d1e49a","@crave/farmblocks-hoc-input":"^4.4.0-alpha.e9d1e49a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.e9d1e49a","@crave/farmblocks-theme":"^1.7.0-alpha.e9d1e49a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.e9d1e49a","dist":{"shasum":"67896b37e0c708f8ff94bec6b9eb8b97048219e0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.e9d1e49a.tgz","integrity":"sha512-USVatpeMwDRsSA0tGaFmT7FKRajzsPtMrcgWs76MzeyX5wWGIZ3cZK+Ppcb6+l6fGhQusGUj6TuAqXwniNVGWg==","fileCount":13,"unpackedSize":56970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0xq+CRA9TVsSAnZWagAAlwUP/0wpPhnFj87oEx1DgpbI\nItvrx6hlfTDJDgD6syN05OzHxxk0dhxJ87VgKlCNyZIn8PsAUM7iSGlUq/39\nbNlPO8u5bCniwPC8GEAf88/34O/JjD55h6ND+6e8sBQQ+STXEIbq8bEsQLni\n1wV/tno/op+TrxgdcFjlAFYPc1CW87+tpUXtivzkTRwMA7VyD9uH3VES8kCQ\n041Q7ZOzPKFXEMSsXgR7/E7gUalGmCuZ+68rq0U+DCXEmTI7bBMHXNiXFD5c\nR/V2oX5IoLv7j/9bxHFNUq1YchB470RhVRd13N+ouTsD7REc/QZBXgN2wv96\nC0BEJZ+inbw1A5ZVIQaGv3BlFOlGi//9/E6jigP0OMaVFzZAHjVhNryEth23\nV+1604eN5wDEKC4MMhgkQOW5VrHhMyUJyFR7Yrb8Q30PFrVc5GQbisWEIWxR\n9t3+x85WNhJcl0h7fzxirXtp5w4284EWvviCZJBnqFJh0e6684IDD7UtD69x\nWoQbsdyz5tgCnrS/J3E3CJvY0oAroMGt7XBzSusLTjXRAVkEn1bYpwf1Uki7\nN0Lc5F2Vu3g2rdgfW8DV7bsB+qAyqotSkJS8Uvy0xThMGJ5l2iZ5nk5nNv1S\nrLdINlcThhgZW7qAacAUJ7mLwMACsTf2Tq7npwk4s1l6gMmDM8T3NX4OVbbd\nUaI7\r\n=VjuM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnOCMLArWnCE2b+OO8alsTXoL4ljby0ie2RlFfVCIpugIhAMs2yVl7/v2lKFCazP8G6JGo9/k77JNtHrbNsH5U9/B2"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.e9d1e49a_1540561597966_0.24433399556008917"},"_hasShrinkwrap":false},"3.3.0-alpha.70ff7bd3":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.70ff7bd3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.70ff7bd3","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.70ff7bd3","@crave/farmblocks-hoc-input":"^4.4.0-alpha.70ff7bd3","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.70ff7bd3","@crave/farmblocks-theme":"^1.7.0-alpha.70ff7bd3","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.70ff7bd3","dist":{"shasum":"7aa7d0dcf3801a3f8abc00d90e52878259e048af","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.70ff7bd3.tgz","integrity":"sha512-2UtN+08koV1+lcK6lSIyVQSB509WSHe+/IqhDb+YDmnH6CrtESMi19jvXUuwSs/C+0Aa7ez786eeNII9UvoEgw==","fileCount":13,"unpackedSize":56970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0yI7CRA9TVsSAnZWagAA0o8P/RAumxx/vXb69wNATTdk\nYWEMpkrqXuXFeece3m5LeRVtQsHcepLeS8jn1dyAvWHk7wvVGrRCPLhZF4Kw\nmIZ+6OSJvO2P7dHyvfYFlESfz2Sb0glUiU5C44Y440aPxrhQpYGX0QDJVPJS\nQeb1sl/VZC/+0Ol2C5O4IXX3D/ASBPbUetgjHbP+sUFNQxVb9sjvmstgEYPk\n8dk3kWP0/8mTM754XY1OhTEeVEEz8rjv7y4kR3nKM0NpX1+NtPlX9EcIiWlD\ntmL4aDRmawpOzTCg5kJuB9tSTJsIDwSQrBffiSVe/3W8okaAMnQo/fek9O4y\nsY3crru6FGA7dog2j9htJu3RKuKreXDvpKf5HlEP8utmCgQMGv2o2uVAXrit\nvwj3RSCixUps2MtJap+0dxQkTOnPGPGYev+4tBVyY9eIiArzR1eKdNW8AK7z\nyjtPx3mjbebSNna2bZNFBXcXscKc4JNx/VesIC8NkTTZe8INkoo+6BeDANNv\nQzbILojVrvCnHNOn1mYjA9x675TMv3Y9pH4MNIgjYDSUvE0hOkqzMKfbqGhH\nzt3y0Kq2Kk1nE7TM+FUSZYGVBRBRHprlRB1EQQ6XKSotNZUFpbaexTuYf0Ik\ne957jAHaK+DrOEqDOFACf+RDJN02P7Ri/Ssf6V4XM7mjx/iz796FpAVaYx3o\nNGPC\r\n=0w9j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFiSgqPjKTTddmtvwtETgtysZGa3W/udCLulK7gnWDvBAiBhpm/gXsgCM470fFsolPwE0hlTgDfEZVne5DUO3toqDQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.70ff7bd3_1540563513520_0.46765022523623845"},"_hasShrinkwrap":false},"3.2.5":{"name":"@crave/farmblocks-input-text","version":"3.2.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.6","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0","@crave/farmblocks-hoc-input":"^4.3.4","@crave/farmblocks-hoc-validation-messages":"^1.0.3","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.5","dist":{"shasum":"8446ee4433b649fc862026a563228c67cf240a59","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.5.tgz","integrity":"sha512-ZsRsVZwIVztMcPlLQbeN+5/9kwpze+mXkOoIDox0VsZZ7dzWFnV8pg4sZq1RtTE+yXNccFTNnv3KhfZBRcYugA==","fileCount":13,"unpackedSize":56836,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb00MUCRA9TVsSAnZWagAAKBgP/iwNstJuAWFGZcuh7tBF\nUGes/0e/0I1BoeW5PH3mY8GX6S0d29SuUBy1hfzLk1b3IThVusPr2cExB+zN\n55721adaSIm5OILEX9/ZlR6M/A0wc9M63rzOmOB6FYyoxyv0YGeH48IUE//T\nDvizcN7cW1+QzEClD0gih4ilbe30xWKU8GRLGa/mcEscdF2+Zhlg8ZL63e/0\nhxj8t1wHzyE/uCtdQvELp+b4la07EuC8wJjoljdAhfM3yPjFzIcc1Fi1RSMv\ng3VsPL0rECx1L5uemZem5k14fdcChSYRHwHs+0GgahNYgsyfRup1RwbAsSJ4\nYpE9275ZeXaxkydVaU1vkyszPpqF4+XWSYdtfXKaxf8pdJ83XsB137LhcmGC\ni8i/wXj77tLo+Hy9vAPFgLCOuYKQ6XU4i+cv0XzxZM0cqJd7xJoQSo1RUHkp\nocU2/yNtVJd4y9JSiJntoQ6jiLf+YpzHorRdTeoai+3UTpYYloGTJCjG7brB\nK6nxXN+GyK8ofJWTdcPcKfRMYUZOQ6NzLPkHtxg5ok+CeTRwdA+g1rg3xpC5\ndd3bJ8nmckey83En9jyxcoxla/gkM5wQp6HQYNGUYVjiKr9wk8Rq6mD1v6O+\nkdAe/jzvNvaKqBqfi8a3f2W2JImFwOf7L0GT0btIJnR4lqDPDZY0ZXaEZEU7\npxsL\r\n=fR0G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRnModVwMCJXxxsVnjcoRunaRXsGg0O9OXdUj8rYFJNgIhALhIMiCVVZ74vRUZGKy+uq1FApoxjFXUDtMJtndwloQA"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.5_1540571923882_0.357801108339147"},"_hasShrinkwrap":false},"3.3.0-alpha.ac36fe7c":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.ac36fe7c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.ac36fe7c","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.ac36fe7c","@crave/farmblocks-hoc-input":"^4.4.0-alpha.ac36fe7c","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.ac36fe7c","@crave/farmblocks-theme":"^1.7.0-alpha.ac36fe7c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.ac36fe7c","dist":{"shasum":"b22453e1470e20b80baa6eb4a28d20d1b84922ba","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.ac36fe7c.tgz","integrity":"sha512-pufMIAvssGCgEEeFV7pCqnxX00tOk9p9qzMmyrz0I34GvrCYdNbOAbz/MGwPhEDvVnbfBVkkRbLij2lLhkwR5A==","fileCount":13,"unpackedSize":57103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb00k/CRA9TVsSAnZWagAAUW0P/2ED+xVJCaXWhA3yuKad\nGZxAio48B1AJziDJ6LVcZ8fi14BkLdS3I0yOnV/XkZ1AImZpiVH3ZtTxm19p\nLWf3JMuTuF2HpkG0xGKddyY/HTyxVYG6HiITu0fyXu+31YEh69cB9JSiKbyd\ngAz8fl373H4zQgVaNfNEVVzoq19EpKxE4aoHBsBI4ae5yIYgcZuAPEUG+0q5\nH/fclJKq8L1csJ6qg8uKy2cEmVvCqLXoyacoyFAXcqjmkcZD4LZ/pAKK4HFN\nVc1mDYMJJLaFrHGggMDtyNMQiDr/uJYGT6UbrUqP4Kt+drgR2qzmU7o9Go/s\nPqMYe2AGML5kK/jOIV95YE09Uzn+sZgSr02w85PfuWNvIsByJj1fjmQkcjHT\nZargwK3lvOMMEJQyDKREeFBJQm8Z3zDYY9Un8XZYUa+QpmL2CSqo4kDLOMxT\nkhbFzYZ5BhqCkrE9d7/uBifEixflQ/PRXrlMzw2eaklkk6dJRkXSLVzQKA4I\nQt0NEAMArPk69N7s8Y/eolh2BZnG6H/jBWuxYm0BKBIT13MJ7iBeRsYuMo0i\nXGT9LPNH/PmBkjqaiWVaAFZYSXD8LaVQIzn9ZGUCESoIs737YekPA1svF7Bm\njk6L5rTBNp7M3RygCqzJN5MCmtOVlcD1F/eGZMe5V4Q+jJj+ipG4cj11yakR\nB2bc\r\n=W6ul\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDXEhtf7InJzGRNit9PbN54eNNTCDi3g8JDGJ9HQjIowAiBIj9aeiJmywougkLhSmRQ8YrMs9bU//tU7NEgo5pSZGw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.ac36fe7c_1540573502823_0.5260232456941298"},"_hasShrinkwrap":false},"3.3.0-alpha.64b91c22":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.64b91c22","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.64b91c22","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.64b91c22","@crave/farmblocks-hoc-input":"^4.4.0-alpha.64b91c22","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.64b91c22","@crave/farmblocks-theme":"^1.7.0-alpha.64b91c22","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.64b91c22","dist":{"shasum":"b15fbf01f111f834f31df39e0d169ab372ee404c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.64b91c22.tgz","integrity":"sha512-8rEpeBFpC30NaHxpAZeqAQBej8FLlImhCy44hX+mUtr3nmT7ljujo8FFW//PPaf+kVaTVOGBVJOt3mQ14nFkBQ==","fileCount":13,"unpackedSize":57210,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb00+5CRA9TVsSAnZWagAAg6EQAJbiFQb1mcfCzTLeVCFO\noE5wy+KTtWhr2gU4aS4wRGOQVITWb1nHNP/lEFPEpviC7rzfD2ds11KKl5Yp\nlI97L3A2byyfgwdiPxjWQ/+E7i+pYiIYirc107EhCPMgkqEWAVexAGKmyxgT\n53c+1YZOZ/T1I5i4PM6d+4qqcHwgRKDATuSL0O3sBpCztUvcG82CiWjeGcQj\n+cBW4YtqwQvMseQf74mmdl0cYHPsm2DAECBYZgllQwHgTZJuDrYF3PE96CC4\ncYpPPX0JLXKverTpbTxbcoYI6xrTkzd+EKA80xQ3Qyh/1O1Sv0uS2Ae6RBiC\n5xNCI7hm3f4Nb6HcCsZBbshK56+A0K6VSC648ckMjphUfiOYCvC7xF4wWujQ\nc0Lnel4nerVblwBP/801O3dZw+VG9xag6lL+ogxT+CYYLNFpO8fQ0VqaG8Ll\nC5JDEjBkSfHk3CfYZL8QLvH99ywSO8kH4KV4d2GbbxLrD0O6VRoF6FYJmIXe\nqHLc0yY3PiH4dGGWKIeGsxem2M+eaFs7rUvIRtTlqgEAKAvadEOeN2s6h1Dy\nIvnfgRTcUvGPOZX5Ropcmy97KnvP6x6stHCTJonlCpW46OU9cfZ9azJzdiz4\nElnG7hjRoPVnv/RKhmjz+DO8Us46qH5R4zMSmXEdOudkudi1nRWb+KuZRgda\n24PW\r\n=nBH7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWZ7N1EKhjFdf87TnzOnznSFDhZ1I+2AUQQ5VyCwlpzgIgOCACnMimeEnvEvgYUmig2cEBwvbJUe2LELWPZzEr/FQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.64b91c22_1540575160364_0.2655597042040645"},"_hasShrinkwrap":false},"3.2.6":{"name":"@crave/farmblocks-input-text","version":"3.2.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.3.7","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.1","@crave/farmblocks-hoc-input":"^4.3.5","@crave/farmblocks-hoc-validation-messages":"^1.0.3","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.2.6","dist":{"shasum":"616dc6b807e1eeda2fc857df7113a4c71d9ca5f4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.2.6.tgz","integrity":"sha512-qAtPYbarzv/Lf7MZDEKKBZiGEtgQ8gRkrO6bqQe0TvspY3yYmAaKRbDYjgQGtMk97hDx2TZuVrTpDmYvt2ARDA==","fileCount":13,"unpackedSize":57076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb016VCRA9TVsSAnZWagAABIYP/jaorR6cXIB/Iwd4EORU\n9TQFjY1SagaOEKNUUejBweYDhnLU05vIPKtSHmPcLDrsOKragDL7BYx17Zbw\n2Yo6VcfC+4n7Xj1Rcwxfac3m0wgge21ztCT3tyR539Cx2lnOThJ91PtmlgnN\nZngZxfR9M9nKBbQfsrNC/PlSKq9m3Y2em/ym0jjm4ajMUy2waxdHhr3EPy7g\nTZ9rcwQtLciMMHjbToaVXaJWArkZ77eJK0XjzIaSSfRIJXnT88V6l/CWJry8\nSCRnjRRhDLmxgHp/yySCgfriH2800gaC+AXfSmtvzyX7CFdBnm0BUGAH0Vgj\n1jP4X0MtxJpasXChyvlYLqYfhHVQiLRujq4IRAHFFHEdt07+Lfy2tX/Kbpce\n8/fOy+DVYJCk/RusyHfcoa3HtXMBmutGrUCJgCMYUWJrIqvkYafnubvfsrru\nfFIP4OFOMmHQs9ZXoch9trn3WkB44uO2EnXCEBgsIh28EWWfIErGj3APWTgH\nvPjwSibcK2AUrXOrJwFnPcUd1LhvEUrzpsVYuOcABSbbC+fUtopqdT2/rIhB\nZdS0zJTpcbWTPe/bK3Aor1MGdDWPMhzX1B71tJhrWCvAr3ayFELQxPe/iDr2\nOr2G1NRUygCGDG2Q0A7k4fAu7D/gHAQ5b1Pn7ZZH2NPQ4gZqc+feneIYJE2G\ntmrc\r\n=w62T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE4cFRKct65NHRKbdYWqaciGa7/PdI3T5oWrHnMFy7QyAiB+ttUk0zL2gPMih7Fjucod7bO7/iEbTuwf4/HPV8TIUA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.2.6_1540578965005_0.533969201180349"},"_hasShrinkwrap":false},"3.3.0-alpha.884cbfbf":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.884cbfbf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.884cbfbf","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.884cbfbf","@crave/farmblocks-hoc-input":"^4.4.0-alpha.884cbfbf","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.884cbfbf","@crave/farmblocks-theme":"^1.7.0-alpha.884cbfbf","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.884cbfbf","dist":{"shasum":"017f22d2bb75fdf88ba1a4e083d1e7b741cdfcb8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.884cbfbf.tgz","integrity":"sha512-ibwtX5JrSh2mPZ5aPlQtY5rfkziphYTCGB62m6N2KAHUaIqmw4gdOuTgMFCk5jskNHHE6Oo7MoZiM/Wt81kuYg==","fileCount":13,"unpackedSize":57103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb02PSCRA9TVsSAnZWagAA15YP/RXSM/RvJBxZkVIz9fLo\n8oEdYoWpDRkbAQULUIDfvXXABfUmOP4ANwL8K3vj459PeF6s6lhdVKEIgAmy\niUt/3xTZOPPzXSC4Gq88OQodv5V+BFkKcszKT3g9gEKJGbwYIxfkrxFkfF8R\nXsxzlu/RHYXjDpItXOjDx2c3RCytxnZZ6PfI8K6MJZa57ZOSzKYafVj/GGcH\noJIzHXYbSQCrh/28l+pquvpx8O4q+IKMUs6nwxv6MepKPB3JSEiiUtxkODkV\nEhqmJHpYa5PrhkTTtApxth54HrfAlVEiMTFMenXCdBDs2cZsEThRyCOknPCQ\nVJqT+moeciH5FKfYYDDcjLFkCvOtmNAPifBHZF9Oad/faUgRfp+IVoJZRBnH\nt1U0gRc8NuMMqR30YUaSHa5lUcKIma9EXSkzOQhn8pa6nvKec5+vc/3YuZID\nWgp2r6ejrDE3rOLGaXLvbaGbJnkY33219b2T+I2lqX38v4wpslZEaoLYCES/\nJBgD7tBT4XDFFb90ZzaK5ODqwexy4RWIdjVZ7+mRRu6TZV0B/vRNMnHKOu7O\nriGgfWCcAJHKen9XGoWY6/oVNQ32YYspmeThhpjgM4QC2MJElMXaWCTUNBOq\n5H7mKo5sLJ3uWXv/7cDN/7v3ApgNVoDmisZuF177AUWlwlVeqg8JH20xGxFX\n4Xhf\r\n=fYno\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDl9u+m6RlhNG50qKv+j9wTLYPyBR3pF0qRF73e9IqbZQIgAwgPamfGvVQ0tmqSl5a8qyj1PpkLzC4z5U6sy5Rm0gM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.884cbfbf_1540580305377_0.6196688957276895"},"_hasShrinkwrap":false},"3.3.0-alpha.0af71f65":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.0af71f65","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.0af71f65","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.0af71f65","@crave/farmblocks-hoc-input":"^4.4.0-alpha.0af71f65","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.0af71f65","@crave/farmblocks-theme":"^1.7.0-alpha.0af71f65","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.0af71f65","dist":{"shasum":"3f28575288abcc68f4d7528d370950929fa0a0ad","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.0af71f65.tgz","integrity":"sha512-mVgCGC9MYuOSNsmudp44kDqnmyHE4ccZjGTRrinjTFKbwokTzaKw+uBcD+qXaBD+fR79Kw1TpeKsK+o6eXfe2A==","fileCount":13,"unpackedSize":57583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb03eGCRA9TVsSAnZWagAAZosP/icLBjrXvvnMzMx4jmhn\nWBg9YMUxtmK+FrvNjL6GmxCo751IPvdniUQRS2lAKUqU7ke6zitR6AfXsKGA\nnr8uWbXT3oKqQbYwLEgmN5EY7vVekpgj+7YobeIkE5HqfCVjJWSLIWOkUZqC\nhWceTkWyWWP38Tqyvvem3IEt5xslrj77n2I9lUzQ6GQSoV4V9qmM80OKiZZ/\nXhV21T560/dLCuHQtp4/F1G7WhQc/ugzKdncBKcLbweNpnvJ2tq3ZRIiYhEh\nh/Jr99As1w9EL6rgZDo8/Ac6PbfHhwSl/aMLTR2J0L92gPRyOwC8fp4acvzm\nEHSoHMZ0KyN3bz6/o0Z4CzWP33PMR+LcWRlFZiZblZBijr/K4DCydGdegufQ\n0Bi4H1sNMm/XT3gZiSi7EF1ywXsvpqdfO4cZ1/1pgSt7bDnLPiI5jIzJ/DxS\nxx2Lls2gNsjMeVPIrdL3m63Ws4c0mUo7YHSS5IVcKddLhUvoD77sqGxc846C\nxRAujvIEO/GaaJtBL5HsYZlOJ4Ms1lIkRxHr1G93K/YD/SJTo5r1n/R8NZpQ\nRtCewK/NWAwt5MYSLwN951Ur6w4rnXSN1gCR81t8VW1ZIav4AYaI9fWagmZ0\n9xJoYY0568ORDB7cN8kCNtXYXGpEWV6wggbb4dWDgz8XWeOKE7YBjWfz4dHi\n62Xv\r\n=zmCH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDhw/3QsmdyqcEEnSMN9mm5dec2QSTOexEWE9dcS9UkkgIhAMYsx8JFOKd8OVWIUMvwxve7pWDBfwyRHWLWn8ouSJTf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.0af71f65_1540585349798_0.356999561759036"},"_hasShrinkwrap":false},"3.3.0-alpha.85335020":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.85335020","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.85335020","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.85335020","@crave/farmblocks-hoc-input":"^4.4.0-alpha.85335020","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.85335020","@crave/farmblocks-theme":"^1.7.0-alpha.85335020","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.85335020","dist":{"shasum":"aeab3f2226dba2bb13150cea748d72cc5ce7802d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.85335020.tgz","integrity":"sha512-nOArNKsaYTNSE49S53bNWvz+Cy53V+pRox1zZ8UVpHcCIpVaYKI7sfEyu/WNHxmPnNq/gRPY0NouPkYOyEhFlw==","fileCount":13,"unpackedSize":57583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb04ClCRA9TVsSAnZWagAAGO4QAJ5DMWV+ktkeGmB/w87n\nJjdRw5ceSmETuYMjBQVjz7BQEIc1RbuAFmqMHVIYrKMr7zr13/esNdPuVAF2\nqJlR+ORLTXOViMYh9Wc117O8gaSjmgNKns31YrtzC7GgD1StNcEMfpIprYZX\nNB4hDsXZg3WTLknJHibxk9Zo7epwaUtt0JaI2x+UYTbR3qVajLBdts/D7aQm\nXj17kfS406+Lv+X1hidCIZuc0gSj5Tygw/4fZ2bC3MWOH1+GhiZYRr8oA3Jj\nyYDTcQAsgrHDttZSOaKYV9r0bSeyFi3xU28cTGSJTH1zvKQ12YtrmRnFR3N7\n6hXLwsg3Q3sQZG+ouuzwZJ60SZ0tpfoJ+tcE7v4qlCRuonACY5EIhZHi3tyz\nyygwVS89UUZcSaIpxHbC+jAjHWYBqMXPjqV8Xj9EfbfPCR+/5QEHL7wdcKlh\n/gdXxH++swhn+S9mqjjsBx9TQXDEE/dIvZJVS1w75mlEOxjiSdqRt8EWKgzw\nAf6TVoad+Frbs6Ru7XgUQ/DFT1cZS8H0iuKSqtNsUcgwSgrKRi8Cq6WjwjTh\n5iSSAiPour40oQIL/iGIslyU6gAEt7uKhLpigl/hIvzMfyeJUopQu7JKfJo/\nZmsjVWqA/f8duWmZDI8hWpe3jntALzKdaRHaWPq5nAbk5ckD2zf7t3j4p3vj\nl4hm\r\n=KNzW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE9V820EFS6aG8fmVwwpPsiFGkocWCU/Zj86CY04nYG6AiApfZLfQA94VOaPNMv6FzQMgaF4jyVUSGlSpCpce8F/eg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.85335020_1540587684467_0.6664110794194935"},"_hasShrinkwrap":false},"3.3.0-alpha.c4ed1a5a":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.c4ed1a5a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.c4ed1a5a","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.c4ed1a5a","@crave/farmblocks-hoc-input":"^4.4.0-alpha.c4ed1a5a","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.c4ed1a5a","@crave/farmblocks-theme":"^1.7.0-alpha.c4ed1a5a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.c4ed1a5a","dist":{"shasum":"6a314b6a379ee5d7c7aced16540b4fd2cdfd4190","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.c4ed1a5a.tgz","integrity":"sha512-tEXn/jQ+sJJGUc256HLMoryFxlqXAQa8oSBEBC21nDzUVe+257zKVNGktP6CmQpKZYVsC2bCo4uyiA/6+1HimA==","fileCount":13,"unpackedSize":57450,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1OulCRA9TVsSAnZWagAA2LwP+wXdzgAxoP8V6sn4eMP8\nGb0OJdLSqKCpT6E/8uDVyRL0ogRJmhdge9det2DsW/YFN7qDYSs8uvANc6wu\nGwTnd/RzMeiLamzBa/OEA0WrHIeUPS1NZx0y4NhA9ntLOks5JB4VzlRD/ADD\nXCA5cOyP//lbVJin3g42GksDTBmfD9a8P9tWrwQdDvkXvrt/yDN/UPLhqPO0\nHGnrTsopmJfq8NP1qLc8XlwnJ3tk+uSa0AdbGqmd1psM/nOYfyJPiETgxKgK\nlmbwxAstnn4kzwSLLqEuVYU3U7/pffZoOYJmZXI2bBdhAboFikZPHgjtGGpP\nXeddFyt3fpXXM4+SsrgXBJfw8+2lQAaZIFLBH/AnARm1n6OF/1nKpcyYpyrO\n9YNd1QZRYyeCqxwAX/3VJ5/ZwnQcLIgdBsYhEVfKChw8+7uSdtHWLjRK2kaO\n5NLy0sdYkqYTB0DjsroWUTryaF2D0lbaeK4SQBDWOaEjzFx95OZbLE6HxRP/\nvVhpCmhhzjNhdXsN8nSTUa1+8kzNEvi1fTJvhUuT4526q7l7OW9AyW2Yl9P5\nH0CT4hRo9Su1GASzBUYaIo9DRsRbLZ7HW3dGsYsckp7jY5xvxuB0YASnN0LY\nIXveRTnmKsOpGiIQHlg+oMd1joHj1UmIcIVi7ireFV6gRUMa7WLPxUZf32B4\naNtZ\r\n=JcYH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGUugZCZMg744KPOjfItbWzbbgHdhePdB0aMO5DtEzl3AiA6U7hAZYoSGpy/8aJ5Mt15kffKHQMEiJjPdb4eI1W6Pw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.c4ed1a5a_1540680612846_0.5543992654597101"},"_hasShrinkwrap":false},"3.3.0-alpha.f94d6eeb":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.f94d6eeb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.f94d6eeb","@crave/farmblocks-hoc-disabled-tooltip":"^1.3.0-alpha.f94d6eeb","@crave/farmblocks-hoc-input":"^4.4.0-alpha.f94d6eeb","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.f94d6eeb","@crave/farmblocks-theme":"^1.7.0-alpha.f94d6eeb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.f94d6eeb","dist":{"shasum":"bb3e57abf04245d68622d987f07c55c984a698c2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.f94d6eeb.tgz","integrity":"sha512-CP8T1QStAVs55N0n4eDcKxq+ySwOR2Rjh36Ps4p6V5cF97ZBISgavZoFGRbkTe7AqVEBsEexr5pbAgQw7lEdKg==","fileCount":13,"unpackedSize":57583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1wBtCRA9TVsSAnZWagAAi4kP/idVNYU2xNABEzmnIgI3\nj44cfRoAip2vcB5LFTiFiZOfuJb2Kgs9RlRoWFuvmcdYgaIwuCp/5smXdRMj\nEtBB8F3a2o7pHLM5sevPo9w+siGdmu8vf8lrSqZuBwT7NHDqnVlDcy/BIUh5\nyUL6R6NfQ0JHVmBteoi01Nrkw6ZanTjOLOHNQNK+14G1VI3Tm4WWliG6y9mL\nIlh5eQ4piqNWpxRaavVg46K6PibD98Q4+HH5dZbD8ZehdAYBFKpcjdM4eAsH\nIiSI49H2mQBKb8khIf3pCuNUEVO8iXVdW53hYSZuj4y0mbELkZBXB/KaKGQt\nhyCWE50Hs76FJPm1VpNsf3/BERF1x0VaAY5FMPZR4YEwgTFFGhHlYeEf84ZT\nt/pTDovSegsxYsM0Y6C5lFRstTqCFQTXbIvkfuqH+eWBiiQBx4OAymptYZai\nS/fWXcL9G81tqI4TALS82/XLrWhQWNkCKV9eDrHvOa779N6rcUsNy4JEIC3g\nCJdtxQRLzAvvWvH1Owa854ItqL7IRUUri8AM42vzvsCuyiXZVU1QbHwVnnBS\naY6MjJqWYxqTqsXeEtrxrJhojctzilimCs4328URHHKi6rWecXmEy1RoCs3B\nyw9jIXk9yOQKjte0dtSotA1n0njP2Mf52S13JvTKHkUmOYsD9RrZ4G6chhDN\nmOtZ\r\n=WdrK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEGQA3GE4NpY1TxzyOLrI48QeOpQ1CVJFxn+qVuknAq/AiEAyVZ3DC2VgxiijYWfxq3+1Bz3GwOA6DOPe0CRDF9G2Co="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.f94d6eeb_1540817004957_0.9161104504922204"},"_hasShrinkwrap":false},"3.3.0":{"name":"@crave/farmblocks-input-text","version":"3.3.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.0.0","@crave/farmblocks-hoc-disabled-tooltip":"^2.0.0","@crave/farmblocks-hoc-input":"^5.0.0","@crave/farmblocks-hoc-validation-messages":"^2.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0","dist":{"shasum":"dd3429f8ea668b239f5d42cc94c2b9bedf8b3d25","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0.tgz","integrity":"sha512-/obQHmNJo7Vwhna66tYjuP/peDtKbA1Py8O9qgxGcTrgFyU8FJaBLI1kpnydA9h7d5rXhOKEVvVv/yFxknVTPw==","fileCount":13,"unpackedSize":57448,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1wRnCRA9TVsSAnZWagAAsYcP/1kZFDpvSAMVwt/cl2ov\nXIDcn4t6XpOiCv15imvVTotcbOArw5+AMYwodloL6UeFpa779ec/jqTJmMvJ\nGFNpW/UmDTXVo5jKw/N4RhneqCCsW/DcKmC8qPv91QXyfZW4W3U+xHXjCXdM\njG6ox16Bi4Ve8T9GAQH7A6DCNRhWNr+/rDN6Ulyf4iKgN3C6bwqXwpdsaIuL\n5WzhjHviYL9X53VJFSzFzg9ub56Z9vHQ7Klkx4yf2PDM78EAGqejFaxivU/2\nhgBNznYQnjmZ4a4EMychFrWssHv9SeKKV1CWxhHt1y2bHOjZm3JkfDeY2H9+\nXCzbg6Wz3XAMfIQ1FLaCxn+SUMQStZz2EFIBuYl4ZiQKGiXpGjX5CZI454aH\n7ihff5oiwMCHHQtM4suQurIcBlAIYC9WzGsz7rpgDzt0cvC0qFWJDHOIdazT\n50q/BooK9WtzrUpZhzX5rPEZ9jUyeYztmAPQ/Hss7ssJQM2HI2HlRvR39ULf\nKK6W5/VVAeCPatYoeF8Fvt9ER6ESOsny6GgD5rMNOLpC+A53dHZjhq9GVKeP\n9b/lGvRR7ATwIHemoPpaoZ18jGK76Kh5hUmqPOSMmcUl5aSfU++MNxRa9aTr\njyZ+jcUU70FFwiHNvWgjKCi7e97lu+JsRauFAmGaCZQr8I+SyP5lbCkOwjTD\n0+oP\r\n=K4p1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEv3qnCCsHYzGH4IYDVFN3EKPJMirtVULkH1/z7F1wCXAiEA9ounsG1X4u4zrgOvxL1gmAQWJbEkp9boXZw0CVxKYbI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0_1540818022696_0.4978713939424202"},"_hasShrinkwrap":false},"3.4.0-alpha.ca72ed4a":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.ca72ed4a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.ca72ed4a","@crave/farmblocks-hoc-disabled-tooltip":"^2.1.0-alpha.ca72ed4a","@crave/farmblocks-hoc-input":"^5.1.0-alpha.ca72ed4a","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.ca72ed4a","@crave/farmblocks-theme":"^1.7.0-alpha.ca72ed4a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.ca72ed4a","dist":{"shasum":"b0c5a837b30e8b655847b6227589baf335c0366a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.ca72ed4a.tgz","integrity":"sha512-s9XBvnQZuPoswQ88OWDENpqmenEeyc7LBRVRUEbZqJ3b0sjC47/h9ESXPoEKIVJW7w2nAhI23+z4g4wHwGaYAQ==","fileCount":13,"unpackedSize":57822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1wZxCRA9TVsSAnZWagAAp44P/2S2AotPJLAbmv+VOCfg\nV+5L8lJeuSYDIBfcwNteARwt/2TVhvC5AiYSf054OdbbAXAvf99FdCWlSoQq\niOGe3s2/gMR1G+fcrbySZ20p7cWutaY0SKJmfDA1xKxzeUgntAk5p34a04sO\nKLX+uKONSwy7eJEqQkr9vDBTkUp+T/bCJ7uZ+fbcCuJxnLUkm8OKG/6gHSzf\n1EsHxQ2mI0AFLVt7jhLiQu9RdjLw8ND7iOD9I0U3iXPwXr+ct3j+HsKpTH6K\nFDMipOrFS83GtX3Y1M/7IZcLIhwfiXVwgwPETuxJjrxRRlX1BhFD1xPj5fEt\nrrEBo7SIOQOpZ/Jm9e2r/n/4YJQPRPNYtyPwSd+8UPLXbUaC/KLYopEhI8If\nN/uFl+e7yO39xH1i3ucSlGFYxChH8fqXoMMER78xLyhnP4No5JBJshAVxQhf\nOH2F0S0sGpcKn5cAEblKpZ71A6WJGsDiaEh5BE1mx3tk7te96tFxPmBmfpCc\nSYEkh1UcjJ786vvWyTjFgU/4zWNKmcp1XKLGoQ3mVGQ+vM4pB+kbCgPAi83U\nyf3IxBdxBDi5OZI+mMNt2ftVQ8/bpynBIYy4tkB0+CktUqpXJ87L7fQ1NjEz\n+8jf0zka4VI/hVEJFwfAG9uzj8jo0pqhsG2dY2SpExEgywIBM9xYdEMYvcMG\nF84C\r\n=X+zY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzgBIOPZyLDH5KVvSo0qlbeP0caZTrBYMAychcI2y2FwIhAM473tRK9PMTnsQlcl1pE3LvqBKEOnj96TsdvzvRLq2G"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.ca72ed4a_1540818544127_0.5764623695121578"},"_hasShrinkwrap":false},"3.4.0-alpha.cb49a83a":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.cb49a83a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.cb49a83a","@crave/farmblocks-hoc-disabled-tooltip":"^2.1.0-alpha.cb49a83a","@crave/farmblocks-hoc-input":"^5.1.0-alpha.cb49a83a","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.cb49a83a","@crave/farmblocks-theme":"^1.7.0-alpha.cb49a83a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.cb49a83a","dist":{"shasum":"0b6c400b8ec079396b7ea3c553a732e9633db4ce","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.cb49a83a.tgz","integrity":"sha512-x2IkmMt9FNm0wgxATltyf6778SjgaDjMNREyPOFBfL0IV39ovd2zeRXp31I9DHFHpxyRX7gJNTz2qUukcN0nQA==","fileCount":13,"unpackedSize":57822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb10FdCRA9TVsSAnZWagAAXIAP/274LauWBSbaYq3HMMTs\n2D+UY6X6EP0ifTNWI4HTqhX5I9VFsfhksIMd/ZyUv6LRB0OD8NtGSaLCfMxi\nPGqdf4dTq8WAKPJhr1tFzY18wMR/Sm50BjghU+E1Ah7g7YIgwR4cOB76jHSv\nxxtOzTtrErGx9/AIuQOy4DkVGJsU0kCeVx0GXlMo1nntk09fc9ucaWlu6WY3\ngq6UyHlNFBkQbZgbm4g1OZo6ZE1diVXjs6zifYjeHy97ctPB4yMaC3dBszJ+\nMB277UVCpFHpdM5yAKeUDMZqnCqBhVm3SYXG/GvG7lgSbApP95RzOM0Qb3w7\nbQqPgCOnBtyxTFpVQ3VA0rdxPw0jqH/2PwLRDq9+yMNpBsUg9T8d378wUUYV\nT829Q9WR+Bb1XveZOY+3Y8MNauJx1qTbY/2duggXePtM1CNfDd7Yxbb/LUeq\njUWM7tkUy/wHeK+5k60cGFSvdOd9AED+xKONCExUr7Hfv3idUGN2JUsdaSYU\nUBbJEtg6yTMOcH0QxkW2o0r0XV+UG/8w1wSa0skDG9RtchfJIwGMqz1AOwG9\nQX/wHHOJXfWvwcWLXy1aQsw5yiGsx98+7faM9U5GBN9XQnl1geML7t8eo+WK\nA/t9iLo+uidBxwH9lEmXyoHzXribODzyQZahc/0C5IghT6LZvunCIcfZHND7\nFL1b\r\n=aPdn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYBRoyedljXz+Y9YFKtZYzlHazQNfdDovxsbE+x3BjMwIgVwe5Cx2/UV7PZ2dCvtoo1l2IM5d2qpTS7USlAMehiGs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.cb49a83a_1540833628723_0.5350850821489992"},"_hasShrinkwrap":false},"3.4.0-alpha.cbfce4cd":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.cbfce4cd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.cbfce4cd","@crave/farmblocks-hoc-disabled-tooltip":"^2.1.0-alpha.cbfce4cd","@crave/farmblocks-hoc-input":"^5.1.0-alpha.cbfce4cd","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.cbfce4cd","@crave/farmblocks-theme":"^1.7.0-alpha.cbfce4cd","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.cbfce4cd","dist":{"shasum":"f089ddd03794ecf5a2ccb4a4f60051d600560949","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.cbfce4cd.tgz","integrity":"sha512-4Xmnh/EADDZQM3AaGjM4rPaQrmihUzuCV29DqZXziYe6gpM1Um/1OyygN1v23kdZjyPa8nIWJo+IIylt3zoimw==","fileCount":13,"unpackedSize":57822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb12V/CRA9TVsSAnZWagAAyrEP/jaPh671ayaH2lyRy88f\niqvSi/nZvnHNQN5KDQU5JoFDOTsxB5bo6CGGSpO3PCU1n414fgKKtbPlQl4G\nZsvIULfdw6evDKvXtY2JmfHi27Reku/9f0PCwaGskFEg8wM8BKsVbW+GKZVA\nD8q/kKzZCUaxv0PQjU00VQDol9juhgQbvToaX3K+S43wVrZRyvBoomd4DU3U\nGFa+/mzhqf0iuVxuF694QixzGZ+Yd8e0o0hUyzlXwaGA9NN1JNd4GTAgVJ8/\nhYtTpN4xKVrEQzxH4qh7ewK1ucOTXvs1Y1faNq+JWvtpZgYwFC6W+A9S4b4v\nAO4mxOP18AhqrkVXdF2+jM74gg+8E4S+mQDz8hMf9BfoKgOV/SskIEyihfJv\ncu9zJfXAwrL6gUC73Hg3qdVMlBOv7X/qGwzj6rGetjtozAluDraDj/ORPMMz\nQHQdUkx8IDhLDErZZSjC3inpT+sNpgiz1MRho9HW3IXJVk/Zxyp5UgDlrWfs\n97YkC9m3mihPaGMSUdufDMGp3CUMtaQBHUesiF9zyTuMSMGXGTKP8P9l5VJf\nIetgWnZ3DVt4HkRvNATNBVFsXnhIyIQfpE+TLuXKv9TlCGWdYDBl/DGO0xeR\n9obgMfwK2ZW4jxsXF8T87iPLmaq3wWj6sSbNgf7mDMOC3mGbJEJsL4642lUU\n7/i6\r\n=0y9N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC0hCKvOIms5ZOfV5ZQDTl+W+V3q9H9xcDC9VY8xyruVAiEA9kTobWTra7iCF9lgLiLOrVHT7OprzpR+IEj2CgDZb6Q="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.cbfce4cd_1540842878452_0.7338879046814237"},"_hasShrinkwrap":false},"3.4.0-alpha.52cafd22":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.52cafd22","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.52cafd22","@crave/farmblocks-hoc-disabled-tooltip":"^2.1.0-alpha.52cafd22","@crave/farmblocks-hoc-input":"^5.1.0-alpha.52cafd22","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.52cafd22","@crave/farmblocks-theme":"^1.7.0-alpha.52cafd22","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.52cafd22","dist":{"shasum":"5227c3fc106ddeedab69fc4ba403a6743c50201a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.52cafd22.tgz","integrity":"sha512-G/lzOCm6o5N56kvInz225lH0bqCY/7CgFgwBWRsOdLig6ujUMCi6lrK4QvhrIDH1W7jvPW8thGVTWpvEcFtXjw==","fileCount":13,"unpackedSize":57822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2EtRCRA9TVsSAnZWagAAXhwQAI1rC6wEGCk0PnAAJe+K\n+JMdGivQxE+fxVKQOGlFMUC38sIoXQtToByuMpz1IXQETikZLyKnt6p+ySWu\n9MD5nptkBhUvJ8iknuYj9s3L1vhZLYlDVHCvRxRNevioP4qTMzeqzpdgSMlw\nmrBJzI7a5XkctBbmbHkJACkjQkZVDY/JunLcrAszLGkYe/f2AM03noJWR7DH\nJ1tfqKgH/yPaUhG8clL0FCHRin2XUBIP6XhvBtpaRuD1qPdovV5rAlzjG6if\ndy2r8Py57AMx5IpRW2Io/DaH1Z5DHM+IZkBXEb5FJTHuWijcSanN/vLmW0qj\nbjBYCtIeRmXL8JQDBbUZL2gG9Gc5MWM+g7CN9A0gk8ACs0GjE1OL1wE8au3m\n0O97IRUQVB7Dc6HxAz4zKoOKyoZCSyz4tNimHfWnZvL7e0bKyJqb8hEENeWk\nCxWLpr4dihH9RJh6tUToPMc1aelG9LcP8wxTRryTuu1DwBCpo1+MrQ8CgCxg\n7d6U79mtn4hB6AIy0ycARq8SMmU1GopzKfV0ZsVrlINj8gDp21zoGzquVJA8\nREfIVOXJxtywN9oVzBlMtjFxeb15EkXHxIRl+OcpPUsNVD8t7ckFKS3Dl++Q\nR/MXdDoRQEQYMqT24yRFvnmFtp8DXiQ0iRCi4yzYjCzq6ij7daers8t09XOF\nTrpM\r\n=p0qK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBZTvqSeL9u66TR7v+xmyMk2o8rhjBTCCQs3MMbl2dWjAiEAx8nFeLLV5aLubsDkNBQ0fyqkGwr3ttrytTusXPpyIGw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.52cafd22_1540901712372_0.8877625305771584"},"_hasShrinkwrap":false},"3.4.0-alpha.9053ee92":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.9053ee92","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.9053ee92","@crave/farmblocks-hoc-disabled-tooltip":"^2.1.0-alpha.9053ee92","@crave/farmblocks-hoc-input":"^5.1.0-alpha.9053ee92","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.9053ee92","@crave/farmblocks-theme":"^1.7.0-alpha.9053ee92","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.9053ee92","dist":{"shasum":"33db4abbc8d2eb9d425f64435f2e46498a05e128","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.9053ee92.tgz","integrity":"sha512-w/Y3dQbY/f7tvdgd199L3xtdXja8eXtGa9s3BRhggNg5Rg9sHY7mT/j38KwmW0XRYm+k3o7AvaoCSMRWY6d1YA==","fileCount":13,"unpackedSize":57822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2FWwCRA9TVsSAnZWagAAQRsP/181kpS/ciILd1RHLvls\nVtWdy5xLvm+PklFKNIGFcYQYEBF9PLoz8OAnz/CS41VD/g6r1NXv9Hc8HfV8\n66PvjHI5DOrpqZOOZDlL82ewrvSHG2kvVdmioq0MullFjfVg2mFaIT3MjFWP\ntysKp+GWm8MmFeAemEwj7yhQr1GG2+Pt1VPzjhEd20GrntbubPpN4+xs3Xuy\nuVMfbj/jqOrCxljXlRNc5LLkS8Y0bgNRaJJUaDWctbIi4iCYrFCahlMg1+CH\npcnzPTxD+KDVv1ipDOjAGMwYaxXNE3jIMw3RZxlm5a5T78OgPcUUgpyeu9Lg\nXMSyVOgD5X18tHrMpI2klEjvXCXMUYMDuuBNuYovw2JZKQiEtuxFrB++8lfS\n6Zq95khn+zwr1BOQL86OYYUbzYCG6fhuB4YKZFsJ91jfstry/+t/jEU0dxUd\nTXjBmWxnn/41eOCxgf5U0bY/DhYE3IwZ+uKh7C6pMebOMTFD2ywp8f7J3Hdx\nOmLDWztixO9gfXM0DSF01uKz9Y5QBEPhSr+Z3yC/yQugoE7YaDTwKEK0l04U\nnucHoIfOboemUzwo4jnF9GdOrDWB3nRQeNwhEGaBBlQE/Y6dc25AxG9vtCfc\nAoeE/TeU3+ujMwm0DX81osiLgldxF0iGILyHr5VKYO4S02GZzprUsbv3Y4nr\n4hw9\r\n=rhJn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD49Q5QY9K17bDGbTych9fHqT0ou+savBxnUNnVT8fNowIgBAE9aHwsHztSMPHJF5qk34XPZFpRPwsE/WEfjxNGKYY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.9053ee92_1540904367989_0.7903754811171282"},"_hasShrinkwrap":false},"3.3.1":{"name":"@crave/farmblocks-input-text","version":"3.3.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.0.1","@crave/farmblocks-hoc-disabled-tooltip":"^2.0.1","@crave/farmblocks-hoc-input":"^5.0.1","@crave/farmblocks-hoc-validation-messages":"^2.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.1","dist":{"shasum":"c1644a69c6dbe2f424c67f50851be96ba20f52ac","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.1.tgz","integrity":"sha512-bUwHvXy09J0NIj6VBguCP/XdnA5AEQWdhSO66QJNxZNw70eIALbBnSWKN42jMixDfL+5VnVhemgMvjCUNaXgCg==","fileCount":13,"unpackedSize":57688,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2F7TCRA9TVsSAnZWagAArPsQAIjJ6l39wiqq7JURJ1Q1\nUxESTccQNWo/abDP+u211zhu7Kk3oEpa0kNC/HRckNmKUk5SLi0DI+0altTq\n580qld4DcCLUS0+H8Dx8NsZ+jO4UYbsIElvg7Q2+iPSlr1iJYlFPaeBsHpuk\noTuvt89OA2Cy7AQKpj/2tDWwRI02GvbZdFfkwbYxGe7GzjaOf3M4Km4W/kfA\n9Va9LytAZx+OJzHmoFkeWd3f6Bes7jMYTardoljnobYk2oq+pzeLZsa3A0q4\n4jXYDtElo1uRUTLYCo83kKQUVpzC3JQW3x+vvwz5Q+8EfJBEEaZ4ExUxCRqD\nFRZk81N6DIluXgLN3kXG2BgqhpdUooPvHK3FwfZPn7949YstqUJhhmmsLUyh\nJfvw6s6WNZQ23/Hn7LHHOLaWXZjIwyB9Fmt6uMdn3SZUjDZCmY94YiykNT5s\nFsXi+QupeknA8KMyWlezXkiYE5ScvBTQyyYB1TNTmDqxVV0NNlXEkAwWBqy5\nXC2gl8jFjsYSJZwVD1BMXxAPdqWaoBGzS2WfSWf1Yt71HSfWFmx/CWWeUIBQ\nekBwICNs61YUb0OqQb09pOLQEeIFK8yZG0Zw+yFdM92DT8XD2/wIvJqePUK1\nczRtzSVQhMAtQs50FftJL2WYeU4cpkd5GUiReOT9TsGofiwXongQaPJqe6be\nF+hi\r\n=r/wV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFLR2BXAMOXtndTMve5V1LdbZlGfzPtVhkjXLlPuun0jAiBoDJ0TED1owQJen6ZSK08OYqnT8J60dUNb2exCWc9nqA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.1_1540906706789_0.29865192541290897"},"_hasShrinkwrap":false},"3.4.0-alpha.6a288aed":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.6a288aed","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.6a288aed","@crave/farmblocks-hoc-disabled-tooltip":"^2.1.0-alpha.6a288aed","@crave/farmblocks-hoc-input":"^5.1.0-alpha.6a288aed","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.6a288aed","@crave/farmblocks-theme":"^1.7.0-alpha.6a288aed","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.6a288aed","dist":{"shasum":"b5d6d9d10a86ff9034414d87dde0d200db39210b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.6a288aed.tgz","integrity":"sha512-hUREjPfd3iNuqjDZ8BIjg+c1az9BnFNNcu33d0Rs1sZAytgzxZ2Onn+xZNq3H2mg8BSwR3m6Mujqu6BN/d8w5Q==","fileCount":13,"unpackedSize":58062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2HV/CRA9TVsSAnZWagAAELoQAKLtacVml1pU3AdaSdtW\nzPCPWGR8tYGrLm3+BASSozg2+9cAxyt4OL6s4x4kI5UiSC5o4eJ6PRB3Q8zY\nvZ124t0/11nOGVHLhdllYtOcFRYULiYLdLr5gsu3AJDkxOdOa5RsTks1J8uD\nYfHYtbX3HlJ8ivvzhTRVWcRnVKnSTf5HvwB4O8ZhcHwGa4+s3+xY5jc6/+sR\nSyteDxOfpHb5CldosXvwsdoDW9u9vI3+MkUeLjkW3FXDli2Th9yB1+yoDs/l\n1JGGHZCmaufI024OQgzVlAyI0X5GCGjDJG0upLKhW5kiUK+u/YuBdO3pZufr\nMH2xV4DIhYKLfRjuVJ1Y8I3t2y5a+k5afuCEZOTGMAJY+q+OfP2Iw3IDMIM7\nvNNvTMziTiaqIi/S0VJpl4kIAWD1iF1abcDWQEgU6dKOEcOVQu0OSpKjS4g4\nWyLDslgr4z/bug7+F/vQHESVJ9fkzahaesMdxwPhV9tPae8lJjh7y5FZRdCk\nbtCjUEmsjf4Kz41NTA605iwU1K0sRWKndmiW0kwMZSGo5xHM9z/+HjV4Fiqx\ny+WUIU/6/EaV+d1b1D0iGUtPQmWgzsyHEzdc6UJSvYbF+OccMvpcQbmHc7Ud\nlXphqpmr8ed7rtUrBIm/2aIZspE1bPXrK0sgkQEbvInec4m2hJJRTxeQRVXj\nVV4O\r\n=Tf8k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDpgh4/MOB6cHifBoX2g/331lIOkrBGLBOH8TkGepVOcAiEAnF4JmQyLLSVPGsPcUscJWCEpupZFqJhKrm3DmDTvMYs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.6a288aed_1540912511190_0.46239514912462454"},"_hasShrinkwrap":false},"3.4.0-alpha.68975eb4":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.68975eb4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.68975eb4","@crave/farmblocks-hoc-disabled-tooltip":"^2.1.0-alpha.68975eb4","@crave/farmblocks-hoc-input":"^5.1.0-alpha.68975eb4","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.68975eb4","@crave/farmblocks-theme":"^1.7.0-alpha.68975eb4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.68975eb4","dist":{"shasum":"6ba07b1241182a4acc495ff85a90e2d16f0f8f48","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.68975eb4.tgz","integrity":"sha512-Gb70ao7uT7HwHccMjyv3Sc+LBTESabFaMcn1K2rcSkTlv1BCQIcz8Err9q6W1y1WK645QOmjVO2Q0dqE8GH1lg==","fileCount":13,"unpackedSize":58062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2HuWCRA9TVsSAnZWagAA0AMP/1uAA7zdbRtoszTs6/82\nxSPVKHiuLpDkVi6wrPpMQYEHImzLqnfrW+KX+R2qGlCOV7Hg2QYuB2URpTlV\nTaN2ggMMsLvpvp0b6IhNLQT0Bi8wfKoBilBehHghQewDTBniok3QEij3wVZA\n2HQJ20kEUShqzkhwAOqK3lM53/0ACC4O+WfcL2DOARhcZmv/9H8bKNXlPIP6\nriLEZoNhptiOTgWtMgccbsRh4IeOG9s4AigN/UbXDCrU97P1MODLRUXViAa9\nG+QeuXAB2ypcAsiEs9DicRIIzDQBUlfVLTY5WDqM+YCg2SD1wRRSHHuTE2ci\nh0D54oLN6r70B4tJoMZqNDMProCbALPcSk4+zRwzPgVOXLrFIV0qqPgqa0na\nSn/0vJxFDN0iQw/wek7GNPtVDw/oIAVxYyn1dw37/xrOZiMshxhwkuoaXf/U\nD3GBoaDbIKoDZa4Ez/wnAKkj/5SVAN6rclnpkz88gXnBXLOlv3kerGirW2GO\nvWEbYTX3xhGsWmx0oaRuPfF9F8Bpwe2TLyc1lG9gVVigYvLbbLfgAKUpT5o5\nbokol2rFuKay4Xej3jWPplnveO/424iSNx12Cxwql6m1/iUtA+7RvJrkLDul\nPBO3dVV+5Bp/VKmxNnXij1K7XkGfRUhyw60nL3mL410BqSvihnv577QomYOP\n0STv\r\n=JBZX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDkAJxXwBDmyji2uCyqfwklD5ynzI5mYt4UGCjxvvKWLAiAz+OwcG+3iMMso0wQ1fKRiwNmw3yHfHTSpENV05VnBFA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.68975eb4_1540914069508_0.7975035162276991"},"_hasShrinkwrap":false},"3.4.0-alpha.fb5f3b79":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.fb5f3b79","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.fb5f3b79","@crave/farmblocks-hoc-input":"^5.1.0-alpha.fb5f3b79","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.fb5f3b79","@crave/farmblocks-theme":"^1.7.0-alpha.fb5f3b79","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.fb5f3b79","dist":{"shasum":"fbd24c34a5370ca1773d6c2959467465e8adec32","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.fb5f3b79.tgz","integrity":"sha512-5Zcya0SLX8JxdD4JnuQVHz10DcLobDaCXVsl5GX7g9QFJswJaWnqMmYKiCZcaiaZCvhk8LswvK6p7a8BcOP4Og==","fileCount":13,"unpackedSize":57991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2H9QCRA9TVsSAnZWagAAga8P/0waRm12I+dsRYiGer+E\natumUn93dSSYag6mZW+DWU2YcG2zXEFG6PeKla4655TiiQG/t8V8jQAlRO1l\n4ERn6W0vsJ4MS8QHKAMir757a4PVmakxLjYUnD9yxRI7xM9TYJYh2JmH4Urv\nZhBsN0d2lcJ/x1O03i2jJAYGnzUu9yVvKCy1yXf51iVzUXUL+y2ri50WFV8W\nuDnb7NNbUL1vLQ2B7iCi5eJxYpWipEHoqVk3qBYghVW4LcNNYj9p3PM+u05o\n6AXBHduFiRp0HXB26xaQkle4npuVReDKaNonUcdWxqVB5W6Qjdyl6N9Pz8Ye\n/esG5A3W3YK3t7w25nMfj3C8G80z7iemLGix0oImtDiO1fqdadvzpa10L9mK\n7dRSzKxASUuUdC0LLd2mV8ItZvgW2m5TMk6jV+o/zCbIGunnWzpdaGIBGBK3\n6TK1NC4eMlkn4q3Y9tcB/cq9QMKCONch4Oz3/T0pnzNXod0qk8HPwKfebXMS\npM1PnQrJrrXsWWa3yZaqJLotohzewCQLJJjF4Sy7cHfa+hXl7ywtZqD6DnqC\nagEpC4EYLkov0iAKqvgJVcnggsUw5ditzMHf+MccFDdBoTxZ0xFzMVNOEJOF\nq8lsXJAKHKtf/iVe8Gywm9Zj+/1mo8eIHlunGERBkPddIDXUxnY2vgwbs6Qn\nN0Du\r\n=VZ8t\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID/D1jrpLwa+ddESk3tDkHilb1Km1aW0uKeyn38Jrur0AiBkvvaXcwIouXQtYeZAh9b0ITgahxpm4DajCqWKfbKP9g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.fb5f3b79_1540915023998_0.45591542278801267"},"_hasShrinkwrap":false},"3.4.0-alpha.38e29579":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.38e29579","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.38e29579","@crave/farmblocks-hoc-disabled-tooltip":"^2.1.0-alpha.38e29579","@crave/farmblocks-hoc-input":"^5.1.0-alpha.38e29579","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.38e29579","@crave/farmblocks-theme":"^1.7.0-alpha.38e29579","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.38e29579","dist":{"shasum":"cd078a75f93511851a6157daae26e76fc315cd9a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.38e29579.tgz","integrity":"sha512-2HS/ZrwTr41Fxhei6rs/fVDspD1gt5Xw+e23sLrHIl34hgmRcJB0RuSwDAyPD/dcp/GGIZGrOROJDNNn0VWplw==","fileCount":13,"unpackedSize":58062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2JGVCRA9TVsSAnZWagAAJEUQAJ3n5vsURJ7RJHxUmNK7\n3gHciBUZoKx9Iyigueu2y1Ou9Dk/haZh5tBrUEJu2Yvm/POOePEi10ux2rwp\nY9gkp6PDXYOO6ax4gJxLt+sa3MFgt5JnwGC4pVpa4v5z4cDXhIp5KuRtOlZH\nDjCdFOrZoOjtgRjIdgZ/4J6o+r7Uqlbljd+vTtCW9pypSQlrDBAieP1nCNtX\nfxoHv2gz3Y95oGaR9r3xzvRCuhSA3xJhV0WkmX9cOVdujyhxrBp9RKOpmiW2\nUafha0m3zFPr9+SuzpaJI1TxsdDWVqr64LF6p/tXMH2DJX8m9vdH0iRwIaom\ncm5JRT+q0JeN5L+nccfNcZU2vtHeTL+uLZBakQJVOIj3kQIia+5V7lxQoW5l\ndvOVKUuamUVkYWZs9UwqG0/TrOQPXmeMFWSBkeAmx8WDm5Cy71vbXzS3plnD\nN1h8KY2F7AQoAsCv7GdYYHftABW85dtLqsYCuP24c14EEJevwsRaz9v6mdAa\n1VZW3r450KlnEiYkLb5NwHamDzdiCQTXKLulJ6WtKPqZXMkLcVM3DRwATUUk\nE7tKoSI/otXkTnMsM112md+D2Gs4jvOSppnuRIY3NEIa5VDoaXkMmUhMCqMi\nQoXJIyFHH5exu9x+EkpDOcLnYLr2Oa63I8c2M/b3lZL9SoiYg2+tJuc4xY6g\nspK1\r\n=FymQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCHwCe0ceNOAla8DuoMxSNLAwut5uaQHlWM+BXK68NCgYCIAb0+MGTyirspxmiNVAmg2rJgJQWdACJs9cDnGNfIDLL"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.38e29579_1540919701270_0.014877737414760839"},"_hasShrinkwrap":false},"3.3.2":{"name":"@crave/farmblocks-input-text","version":"3.3.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.0.2","@crave/farmblocks-hoc-input":"^5.0.2","@crave/farmblocks-hoc-validation-messages":"^2.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.2","dist":{"shasum":"c07a97f2bf60b2c2f752e52decdf43238967daa2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.2.tgz","integrity":"sha512-O5K05UKy9P3cDUC/RJZD10bmP/uMiMcyxip/aGaDgDHm0HXcta9/zGmo5jaBNWZVOyJZmlfMKqgxQSO+0erFhA==","fileCount":13,"unpackedSize":57872,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2JQkCRA9TVsSAnZWagAAS+YP/RNfi6u/dLxFy0hvufmI\n86zMOxIinBfTRGuKN9mHJyRp+/lLeSvAjVh5iWUlN6i1AuS6htEBLCbY1IZH\nhw8OBrEwCKR9ptp6PTHPjklRvQBGr0Qsik926Wb4orp7LPGj/lgb/FWTEGFI\nwLQ3Pk58szdKcMDzGuomrgMqceHkCv76XxrxJYn1/1sCSHpZUh2zn0gb0D7S\nylFiJyc0wZIOdLzOCKwhOuqjWeuOx4oiktO+hbPy90mbOc/oINdS9I9mo1i0\n3R5uxT9EA4B1b0gzBeyUnYq/0ocwgopMm5JfBaaDvsSRqQ5pmJH25uIxWhYX\n3Q5tFIWIkD4V3JI3cl5HkpaZtznMKbUvX6FLXbkMZ6NBEqcoH/vWowsx4Rr5\ns0a6Wzs8OxhF0N3mm88ofxWInIOpkwmnsn/+pxOmvtG7dGQRaLKvucnEEs6f\nJQpWvuEau8GDst5pLXSsKwB0DzRkxoLckMwPERllbhpzdTm8vD3lmsW9yCSK\naKqPOCoZpRxvrlTNvmliK0wxZwvoFSEK6t4bUU96yZBPXH4OJf/4hj+xj0G+\nzMp6MD+CnMsi3AFHpxd1IVg3LoVvN2wrWUUi3mZdu7YLlooebXljbU6aCQSD\nxCwNT9PjP1OT62rwxoxg96HJvErujBKkFGD5U299NAjgoHV+8K9ag4TCMxYJ\nDAaN\r\n=NhVt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWr9xIjSSG8ZJ3iUhb9OIYgGO3XUUBIqQekcBXsYlP5QIhANrACCwzXtIWbJMUW3wCvJ5O8sy1D1lgN1og8ks91Z/K"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.2_1540920356077_0.11060448316940952"},"_hasShrinkwrap":false},"3.4.0-alpha.412c9747":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.412c9747","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.412c9747","@crave/farmblocks-hoc-input":"^5.1.0-alpha.412c9747","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.412c9747","@crave/farmblocks-theme":"^1.7.0-alpha.412c9747","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.412c9747","dist":{"shasum":"171852728ac04e9bc42ac2fafd6a24467543b677","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.412c9747.tgz","integrity":"sha512-+oORxXzeuAL/Cb4n3S+L4mtiuAVShRXq6k9puWjkJr8KnltRh1x6OmvbO2owq9TO3fBK3i4L5chnGOZD0tvoig==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2ecRCRA9TVsSAnZWagAAc3cP/Anc3rRw33E1G6x6bkSx\n533a5a2zaN0WMcY/XsYuogUnzZlsF/Fe3CUDIWHlx3gFkFHBI2+Lii+HK3Gq\n0ubkmaeNCA8tK8SnTh6DZyUe0KP83o6+SwDEro3r3mp3zO9WPjRu665d8JAQ\nIh1jek5TORosz1BK91zvwRZtpWnxcDYaMdk7RFXMUTGrYIc5qtWX8hcA1hWm\nzO3Eb150yUtLt4MahHl6+6Cxbl7bvcR3BwEphF1Q2TuMtqPwwsIFZnn4gn3y\nFcH4mldVuB1DMrAF36pyjx3f4mJKw0MA8F55E32mDBkAJoz+tMUHrqNOuG5G\n7Uv2yrRGFwIm+01CUbqWAHdPKVurbpJTYGMyWap+YdXvGM3v8ytZ09p/35Kj\nQG9TFu8hTc4sSmnQiBOLPsGU9m1nkyr3+bTxN6XDls7R77cYLl1A2elhXUn5\nGh2/rXQyJYQhpJXS7XrpnWzzJ/AmWfDXxxcU6oTL1J6U2BMqq/hsAoIm6BaF\nhFsR2tPYjpxLY/SlHGTUKkjWhxDRvdkOl5laFhe+Xhcc63FEgTF2QfIqJ4+5\nA1a49z/Cg5n/apn0QkpDZXR0X7sclS07zwPu+fR+r/WZbtAcqt0D9VjNS73p\nvobrwDQ0Zzk0s4o2T0AEgGsF2wdsL8Ti/Z2puHyWeAPCPcSqcr5yNh3V+9T9\n0BVe\r\n=vQRS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDDOYRuyoTlOR7oUSRT1XEo4hA9aZdw7mmPb3paH+tuuAiAJspctj+VdKr9YTIrI9AgjRZkVdvpz49kBuQlLKKTjEA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.412c9747_1541007113862_0.6033637032869221"},"_hasShrinkwrap":false},"3.4.0-alpha.eef645a0":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.eef645a0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.eef645a0","@crave/farmblocks-hoc-input":"^5.1.0-alpha.eef645a0","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.eef645a0","@crave/farmblocks-theme":"^1.7.0-alpha.eef645a0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.eef645a0","dist":{"shasum":"c0bcb54311492826369c4cc6bc9d559867846808","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.eef645a0.tgz","integrity":"sha512-4Ec7wYtLoN1Ty4fIMBb85dW4da6A0ghdLopLcgyXAcO1V8KD1RPYgT4Tvr7SEEmwauZYMYJfDkFI8bMMWZZ3wQ==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2sRkCRA9TVsSAnZWagAAZVIP/2LYf8oNsDiHkdXnH/tW\nf6ZrNmKydC8tx+4053+bnlTljnvMRiniPQs1b/QUOKp1b6sLAPfYsoPqoKbx\nBIx322+kjvpnpDdEcKVdtcCIrBLAvgBHYTIA23SmCJ4jyP2XX9ArMm0eUAKX\nyY1WTxQz+JiRrx1J3UExHzZhr5b/n4ckP1bKlufNqiE4vgNsdr597Mmb5LhO\n3sLsvsQopMnq4sNh7j0HeH1TBUanxrrFuENfWwCwMzzgigPupG5Fppx9ggVJ\nkY2lxcNoXANq0E4fuI+OOjPqy5j9NXygCkxX+gzljy5kr6P5a6f2Txg+VG9V\nMaXSZ5ZIbkWf9PUw8n6VOE7xz7Sq19kQqqh0/YBx3q7iNWqfwkx0g3IS9qJq\nWFTAihdqU2phIPs/ZTy2Xpo33kNHSGPBacxBTF1p+erkBJLgb0HsmaPCyqPi\nhzTU7zb+TuO3KzauzsC5scgbajIWtXwUapZlKGG071J6LP86c1zpTtpRjOT0\nc0nXFyQcLNNmb7IOaDdgbOX4w7+1RBdfkPB0/CFHHO4rf9oyawvbPvuhDfG4\n0SsHz86+QYGEI9lLj2IHzwCFJ1CRWfhRS5ExnQ28SqQ2i6CutFJpJZNwZMd3\neG3+RHuFonzePv+wPVr+QVj8jNvWyyjLiumBeToVdpcHHQoBOxtuIPg2ftAs\ntuvt\r\n=nflb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCH3lze4pXQuumMbBaHzzR24d4gtzyp9GsHVnbEnJ0ojwIgYX0GO/ELpwZETGz3W/0WxQza3CKSDvtWdfBa+Ba4jok="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.eef645a0_1541063780061_0.13553563524132106"},"_hasShrinkwrap":false},"3.4.0-alpha.3292553c":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.3292553c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.3292553c","@crave/farmblocks-hoc-input":"^5.1.0-alpha.3292553c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.3292553c","@crave/farmblocks-theme":"^1.7.0-alpha.3292553c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.3292553c","dist":{"shasum":"9d008c763b423a063758d9df5efa7c612fa6b4ab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.3292553c.tgz","integrity":"sha512-eoLzLOllHytGfDDIJwZbGhyoYyv/nvO+VqNggveJ5oEMrcmCOuxq2bBuRWVRNYXMTsbQn3i4Acjbz1y3TB1Kwg==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2yiJCRA9TVsSAnZWagAA7LUP/3C4/PASwBCJQVZ4OFcs\nHSm8dkTKcbrJo7tXPV1D8u7EfpDA5T3CqNWxKUK1wD6pP15lbLEsLd1N7NpV\ncu56bCVOyx4Er7JzEbyUsIM/92cQpz88agG4Y04a12M8WyiEaB0wsjpdo3gw\nCsAtCgjRM/30h0NZifLxPrUgEIEQ+7PJ5qlFrRKgvIfldl90r4irtg/gmrH2\n11gHn/FT0cp6+r8I26D2qLYvpVGpwWgbucD/cF4yVFbwcO+ngDmdw5lmpUgd\nozEmd2eGeWOZXKtwO/oLhw+E1A+Dk6d1uXQ29OhJ5LAnABfjuuqjtZG5VMrD\n8k1dTK5pajeWyx0ZGKep2SJm8vzt16BIVP8+lhJD/hTGJdJiaXVFGFxv9Dyv\nJhWDFDBCojoNE3GDgNkyR/MZ0eeEJ8kyKmclmi+FvyE7yb5MkrC/Za51DYMY\nJUGTvXnHN9KCa5XYNeZLkqKH/3u0mNXB3oy+0cSOJfG859L+yCiejn2SwOqa\nh2cXuaVgQ06VsLui/T1z2c9zed7Fv/I8w5KdSJQpikrdwWa22JRGf/EAFe0b\n3H1edkOtMn0nlUHFCVh297vBx4ZDjuchqN983fgVUR/mdq7deFq59WzZ0sZK\n5N79msE97tmtqkK4yH1Jb8KZZ6r8ny/O5QiSVTZhWzolZEam8w281k7og9eh\nvhhH\r\n=1eqT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFNSx4haXZMOOpIHGeCpAHlMSQQxYGUQxR1farXsVsRGAiAfhpGd8nDKCjdO0a2kmCcooUn2yLRxeHUBOEGTYfW+eg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.3292553c_1541089416635_0.9661975879686913"},"_hasShrinkwrap":false},"3.4.0-alpha.5d5d840f":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.5d5d840f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.5d5d840f","@crave/farmblocks-hoc-input":"^5.1.0-alpha.5d5d840f","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.5d5d840f","@crave/farmblocks-theme":"^1.7.0-alpha.5d5d840f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.5d5d840f","dist":{"shasum":"cc58920a8e52396924c55b15488d29179846ceff","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.5d5d840f.tgz","integrity":"sha512-XvLUZ5pv1ChEmGqXbsdgxZpCAHepUSoE3aW9R3fP/3XB+nfP0BTIpsEr+9VxeUVpjroLWEGpIa4y+wsXugAn2Q==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3bbqCRA9TVsSAnZWagAAk+kP/AkylMkdOWiHMf260yP6\nqiOqpHVJBMw6DmByek9XXVxgKwOX2vqtpmaOV1WfAJlWCvX4miIFG21DBmPD\nNNmxWpd4LRNFemAp1bR67FGygU8mMuYpCknqFDQlNteweUQnbT+A7Yl/2pY7\nPxMPtJBqK0iVzoGwo71HrG2sMJeJjH2isQNAcooSEC5fnam5me/Dvca2oCmz\ncuiQZXd29KxXy1c7hEJk2poLp2ay2LZTBp+Yq7aNZbxQ3gzqypY7xjjUd34X\nG3a8nLH3qTv4CyDJYv+PhVczi/efOjq+mrX8el4LFSqpEO7v2SOgzoaJDsqm\neEDVMcNo+Z7u1TEoTcesjxg+9OCEY5lNtDpqxll/I0zuQ/vFUTgzlSurDI62\nokFVmJdH4568qaowjHizu9cOVvFMo5pQithqiEgdUuJTqDrQe35rDFCcNpS4\naLu8J0btebBt5FcXBA25pDpmb8pmch9G7NNmrD126LmnhS6aA5R3TClPB0HN\n962YMK4f0yFY7P+J56qaDdVByuhciEU8KcnM3Ptpav5lFHfAvvt58MzhWd/h\nbeN3p1v890AFlNdxHCPdoldRf1kqJWGuvcbbdBhwyw7JfxdhKvx1XUzPQRwA\n3RscsfiZ40PtG1vI6nez2eBA0aQZYjDafqXFs9otMuAfP8Ir1of55QSzuseu\nZKNO\r\n=jLvZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCet4pkoKeiq+II9J19K8H5mV7u51BtNGRh2VN0wCzR4AIhALDLarOr7NApjMDp9H13KSeU93LborKDW93PTK3G0+Md"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.5d5d840f_1541256938129_0.8549129092317969"},"_hasShrinkwrap":false},"3.4.0-alpha.63619ba1":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.63619ba1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.63619ba1","@crave/farmblocks-hoc-input":"^5.1.0-alpha.63619ba1","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.63619ba1","@crave/farmblocks-theme":"^1.7.0-alpha.63619ba1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.63619ba1","dist":{"shasum":"acc4dd6048139ea5b77a945291cc8d4d54ba7854","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.63619ba1.tgz","integrity":"sha512-nR0WG9Gza6fGFaTSxn7Z+3LNYhsoG5Csz4dcBcfA6CSvlgnj+zxhaYGAJrVO4H5Vnbp/3fQbe02IAO28l7WWTQ==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3hZXCRA9TVsSAnZWagAAtXQQAIi94+odMsjUNrKm5zxX\n/yia+QkRFOX0bdCRzocjVinjz+UxjA7l5px2lJl5CKCQavk+pREVEga6xfL8\n8nzOKGcI8o7nMXzZ8hzmcWDPw5N3L1vuzTjhIpnls17Y7PfnlHBTiqks38Sd\nVyf9UbV/o4Mb7mcwKEqYzWn1p0PxWHQ5HfGzrcQziCbl88BJfkc69y6ihkO6\n7/t1iBfRGxYjwJXp0akGRWioeWcTpa4ouP2rdSnlKgzcEbNrcM4ElCr/z5nF\n6i4316blUvMsL/pMvCj+51aMgsMlaaZ61h2IAjuSdfGAhDQHujtWW/+qOZxx\n51B5ocEhhVkLdLXMjlvT33Xa3tzlb2xycnwzAA/aOXIbPem4u5VjKyqBWtkn\nQrnfdRwsEBnN/AGNc33BSNqPzH5a1Iv+sAdKOurdbW8ZzAUMpXfVOheP8Pcs\n4Ux0ffrTp4EmosmcmKyBoddEIOH8daJcyOfQ2Xl7IptY00mqRWYCWwAnx/MA\n4SNmz8XgM4XeoCDAX5sidIy9G9T3YfVV5HUPWHu2A9yQOcX8XykBTTMbTAEi\nm0LjjbuzHc5Op2nH4OXirRdtWD88ht4+awN9uvH4RH70NeKqb5SoGsEFhmU6\nstsY1s9jZiKjxmBjKnOYFciJBfQirHfnfInLXughlP7zsv6XuzSYAqJ/LO/C\nomhc\r\n=gCoa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCT2flulHV3jzYPLU2536c+9ET3GBv5QE5qIbfHEESOqQIgAYB81DRlMiMKG3iC3J8q6+6RTQUoo5IfkM057igB77w="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.63619ba1_1541281367090_0.5331112757316447"},"_hasShrinkwrap":false},"3.4.0-alpha.47d16c13":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.47d16c13","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.47d16c13","@crave/farmblocks-hoc-input":"^5.1.0-alpha.47d16c13","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.47d16c13","@crave/farmblocks-theme":"^1.7.0-alpha.47d16c13","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.47d16c13","dist":{"shasum":"a9a078f7d736bed5312df7a3e54b532c860187d7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.47d16c13.tgz","integrity":"sha512-79dVR6GjsR4CYWoKhFrec72PDta6gFkToU7quYGGCx695EuPTCPWGp8VxknJ79+drdJ/1keXX6UgayPaDK3Ojw==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3rf0CRA9TVsSAnZWagAA70kP/j8UtokIfQofNhsLrPzb\nWpm4CTHO1C4gVJARYkESxT6QuyPfqQ2Zbt/AofAYYpnBvbJog6jzNlQGoSIJ\nBDazb3+azU2OwIcsIynTHbq56SOKrRa0T0UsV+Hzyyo31bAMz+Z6B4oI+txx\nilSyY1YmylJhK5LpYaUnvfiG/c7oa2Of+iLQg2TRm2URPdGXRwNSkeeTejTZ\n/p4N6MANSEpDKx3ChyvXz04nh44NAF6rYjONTq/+Zm62LgfB+Z0DUaW+s0UI\nd4VWNps/ga7at+dovHmCCsb01S2kdkgq+Fo2xYx2xiZxHhrhPsoPtkrsQyXX\n0au7w4uMelIIWZsAwqGOgvrQs0r1OvCFFlTsOFKqqiJs+6BUSmITsZfBU8Xw\nboTeapx0W0SrPpHEwCsFG/2dRU/0QUrL0uxk210IW7xv0cLl2lwRXfy3Zg0K\nlnNZtrMnOMOxCxD85Cx/FYJbzrdomv64TQxK5NoSPQ+YxgrGmfI7s1sQqn6M\nOS/FjjlLYQLgvDjpr3RjYmEnxtG5xO9kH7ZjigQQHzQ/3in+JKNlfcoZpc3t\nRqySIY96HeTQKKIG1MKhTGV7GA36muQT/8Y02rKrJJKYc7clXzy9h4xFLxdV\n0a7+YB+DQmH6nvc1DiNikdgPleq+BMWwH5XF/NaNcvUf+VH2JIf9jtU8WD9y\nr5EN\r\n=zqMr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAi2B3qUJtQKhy0yy2RkotMofPW6ALwrFz/9d76Aq1BkAiBiNwg0Wtc2k4CecuCpd1yQ7vaQwNnqIxs5JiiZ8C1OLA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.47d16c13_1541322739415_0.23365714242619373"},"_hasShrinkwrap":false},"3.4.0-alpha.64dde1e2":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.64dde1e2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.64dde1e2","@crave/farmblocks-hoc-input":"^5.1.0-alpha.64dde1e2","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.64dde1e2","@crave/farmblocks-theme":"^1.7.0-alpha.64dde1e2","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.64dde1e2","dist":{"shasum":"56c2106181ab3a425cef0f4ce269e715b812967c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.64dde1e2.tgz","integrity":"sha512-YH5CCefgNimBP3vh8F7OywywUucwN6zWLsRfI3DoKvCiKErCftT7Xs6V0EFlMrRiPJsv7sLvsf3zIDfUrO6O4Q==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3sM9CRA9TVsSAnZWagAAHZEP/ROrzRofdBFAxQvJ6fe6\nLXsB7huFGn+ZGbpDeRj+tmqQmCLk6Qre2Ync/2UhObaOgr9tdpkTedLOaogb\nkmpdtjSMKQJEDYm2p4dNE98U+LEFsihOBLyQ165Hqa9FexQdLPc8NFJw3a4K\nwkkq/Yfan9tJfyw/Nw9qqs7P9zXS4yjYOldWHQOlcu7IDxH8qYorfyKeagpX\nk8sOhbJyhwlD/NQaV+yTK2jprnvKjP4LsGZKxXOvoAVwAVeF4VmxhCds3xBP\nYw8/5o8VsMWoBpCtSqgjXjeHB5nWVIIZ0yDGMT2xcevZrxYZz/m+94hq+HMQ\nmBiGSl2ywlEfZP0J/sucupMYqbqhOi18wqbgzJq7IbFwaD+QJGFG1/y7xwby\ntaz2ZYbC5tQtZdvKQViL61hdyyGncDcIozvC0TNKg96Eoik8mxfsLA0laFHQ\nO2pcfZdXQqOYTSL4cXeYe3yfOxH2SICoDEj6Q+ezP5OzRjr90SiE8xrGHnje\nnLygGYje1++f81cm1MeZu84Iz8rpxl5waisG1Rv6X2dkhZSSKSNAg/eR/Ncq\nBBgRqAmgqctILR5R2r7/gXGx5jrXZvyiiu/wqLsRrM5TSiQuucMRA0R5Tuhv\nGyz4Sx2D65K3AkqtP6j1312A6GxwOhxdnyncvNK1WnHALtKI6G4a7Iijma5p\noEcR\r\n=HL6p\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkyBm43Sunu9pBbTxOHpN6L01R/V1QdS9ucMaiu8NlFQIgGWNee6UHxe+DwT/kADmZbeKHuRwkEy2ttrlzuGFhmKc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.64dde1e2_1541325629300_0.4169501014806234"},"_hasShrinkwrap":false},"3.4.0-alpha.c667a834":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.c667a834","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.c667a834","@crave/farmblocks-hoc-input":"^5.1.0-alpha.c667a834","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.c667a834","@crave/farmblocks-theme":"^1.7.0-alpha.c667a834","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.c667a834","dist":{"shasum":"da10d238e64ecf8aa629f4cf6b268c36358196e2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.c667a834.tgz","integrity":"sha512-pAL3DFHv4kSZ0gjWmjzU5jmD832m9qbj9wv8Mt0nNDNvmLwFDLplMJVRdWSUnGmnLoG26Jmj2WGbSCpvoRiB/g==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4BlvCRA9TVsSAnZWagAAUS8P/RepzCsB+EoLETdm/oV3\nDnAFbdzeF14dpBpGCTBqRwgKEycpO0EPz3iOGm1LJFW/2qUR/p7MCkqD/loa\nW6EjlRN6IbOqAfb4ozJkihdFK8Hlyeyl6r0Z0yGjY5CLuF9dHlBeq4XEU3hF\nZhuXdncxaviiG3gsdUzESoqhnMrxuLDH411D5tIHHtfchlnjzbAjjuMhd3WN\n9DU7h08ikMYloAp5Uu0VSeiokYlvnNkesJ3gGwAtf24hq7JLIzYyKp6T+jey\nmnYZQ0X0ckPMk/AK4nr5jxchMOODbUpzWvw9zTiZbpU2QEFneXzgjiqvdC0M\npC3CFWaNyzVEpSEVDa+zCep+es291obsohlwcCZyJaplKZrlRPI0/b+kjJVO\nb41EBDXqkm9IC8vcxwynqSu+Le8+BYbgJbJtjqLou1Ny7FiwtIsHn3c6LHeE\nIbLythytyTjbIc+oWR2ONq12QA5BYIQJ0Xapa/w6dH2zw8taPISUTYoCKoBE\n6D8qC3AWh2GI+z8LL6HRWn68GloX98Sysa/bMZcKyu5CmumrePBQIwzH/3Wm\nWevsRnroeZDuINJlyrfClkJzpgfo4RKFl7lnLubUEiNEIcT0D/nt16elVcV4\nNWh30aEccvufsx0fzoxX8wokQnU1o5DahnKGjDrjEReGYRmtIE+ni9wSYFdQ\nVZHE\r\n=7Hr3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAON9kQBml7REb+RK9yaQpO6QmorCqJXpfb4v+nFUps8AiEAvTbjeoRoeg/zRukFGg4zkqHZmlMmX9/X5FVRbdcqO2M="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.c667a834_1541413230944_0.32923270229271173"},"_hasShrinkwrap":false},"3.4.0-alpha.ccc56190":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.ccc56190","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.ccc56190","@crave/farmblocks-hoc-input":"^5.1.0-alpha.ccc56190","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.ccc56190","@crave/farmblocks-theme":"^1.7.0-alpha.ccc56190","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.ccc56190","dist":{"shasum":"903dc77d657cd3bb70d9adeca7c05165aa2385c4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.ccc56190.tgz","integrity":"sha512-jdMXbDU2xI3S500jlDv6ztg5sS788KZqmcjgrJbQRmDeiaFWSPR7EQwUveaTAdEAU9PkK81oaQND8ik2IfZA2w==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4BxkCRA9TVsSAnZWagAAfg8P/iiCd962WRpyZzq7yAzO\nPs9WNlapLKfFubUSghZaf3adACKAYjY2EOwuJiGtMUt5Ybgo5XvcvIKRgf6D\ndGe1BnYseA7VitnajYEugMbiv347xZ+bYDDxBz+79ovK6262fDDmdItv7Gwh\ndj2A4crePFVST5HbJqiOsHqH/DXjyXNfgQjyLqr7Rk7lErqqZIPr4tqrg4Fp\nM2OG0FHvmxudQz2jGT8c9BYXgP7Px1JUxWzoMZYV8hOioglS3HKYuujwrHbn\nXE2Z6oG9E95A3cC5pN9vd24T09tJpmIAI7UEf5f85DOCIt4vNaX4EnaegiJl\nXFFib2GsnRz5VXKbkUN1mkUulqqnW6B2AM0GoqZFVChZcQQhuByb+q8Z+fVd\nWLhaCxBusWxVMGYfnmAMHTeoET7/IcwP5jGXqGvilG/3kuo+230VLKr47l7J\nDm9mQH6y9ex7sshuU9dwi/rl6yUlGPkoIbHjiiQCpDXVDk55ss2rgqhxrhHW\nwoPLIpgP6lTMAosfNZLQ08FP0F8yO1kvdCb5F0ntzoEztu+qbcV/0nKa2pjx\nuYtLvxziABUYzOS+VXvNzyXFrxzx//IyxjhEhT9Bh9YHCuBT0Ezgn9R5gW43\nGLea3piRd747b2meKs0WldszEtVJUTZ7T1ahlBqrKeG/o6+ZpTdPNZ96jOdm\nGgdV\r\n=fchv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDRO091cg1RFVsBbE0pXjTevhyqLNcqUqsJ/e39QPUInAiAz530fgbRd1N7xNdtvFQdvZQO1PLYhJ5JLa4hcDdZ9TQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.ccc56190_1541413987307_0.6228435690233263"},"_hasShrinkwrap":false},"3.4.0-alpha.cb539665":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.cb539665","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.cb539665","@crave/farmblocks-hoc-input":"^5.1.0-alpha.cb539665","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.cb539665","@crave/farmblocks-theme":"^1.7.0-alpha.cb539665","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.cb539665","dist":{"shasum":"9b5090482ea0542117fa60c3eac4677067294629","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.cb539665.tgz","integrity":"sha512-awZE9QrmvHRcHGPVclqEztvJmuaxEXPd45YhJB1RWxY1gZpiHD2EM3nQqN2ziT7aaVBNGazpL+p2ZtXjZ+XxRg==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4EU/CRA9TVsSAnZWagAAkQEP/RyxRCzKajqvmWv94Z//\nKR9nagzZ8essC803U+Zb8bOb9Ad3eqbO1KkDOAbHW3/SBVYUQ9y1aD0QPZQK\nU7gwTyjHbRFSJ0InxRSFETZ02QBvum+YVHhJdDgAwZuVFPd6YbsKlGKou15t\n14pBN42uBTS/MvDpQnbMoR/+lkrGyeKxmk3PaJnxc1Eg58ezAEcW9+LQjPnp\nXghQTTF4hhx3rtQxe8Cn59PkvWuSjGbYEx+HjGgKUv8VS9Lp19UhcF8/Acnj\n5HW1OylITSEQVowN8WM6JO6C443L80OTwAT8qqBlJTTjl6kFCDf2wO5GchnY\nvHaEFxYxXqxkEanAX0p8ALD8mUXyPTwglWhGi1b6JS2Jrg3SpTQCZwgAKgbM\n4L7OsBSkQfuYI+f5x23C3Ubg6g6pHqZn4lRqaWtSHM3WZb9FajlSmTKJUdc0\nwn14iTOIVMJ5xXXWt4cDrepQLO/Y5uv3A06+uV6kwq13CLMKZDSQCj1ET+qF\n45wsS5oMDGZCwhBwrMmbXxi9pACiN+9MwqyrEdDBeRP83ABkOW3IiSGFFJ7E\nM1ZXmTwwKyFs0I9uV6fqSz/bT14OHGz7Vn7mIY0L6UiwBjTj2SMJ2r+C5FYr\nPTsDl6dwNL2P9KoHm8no1j+s8RZ9nshRQ7QdnQ/Nf60gMfZ/jJXEjwjzrTwv\ntyDd\r\n=Ju9Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDK0cTEAV5Jb901IGRDVkb96GL+ZGk99hAIckLtMxkvzwIgGTmxudBVx5gYMlhIPKrkK+CwKGnaAse+fGFtK9ppTQU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.cb539665_1541424447257_0.07385051350502803"},"_hasShrinkwrap":false},"3.4.0-alpha.ff6847aa":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.ff6847aa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.ff6847aa","@crave/farmblocks-hoc-input":"^5.1.0-alpha.ff6847aa","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.ff6847aa","@crave/farmblocks-theme":"^1.7.0-alpha.ff6847aa","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.ff6847aa","dist":{"shasum":"1fe771c3808960f7ddc7121c3a55a948362b0341","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.ff6847aa.tgz","integrity":"sha512-ZcPHdcH6Q/UdCD6Y+Gz5CnLClZY6chSqmbuHFsOnge1VTc+ANX6MFVudfDYB/G0uGg0SQFXfMqZdTRp0T8J4zQ==","fileCount":13,"unpackedSize":58650,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4c6+CRA9TVsSAnZWagAA2dAQAJOjV8CRvyhafIae8FVj\noI+Yn4j0vxyiOW8TJR1+kKlQG9R8k+H/+TL7Q8LOBpvoKCPXyDW3KTnkAcYa\nuNCKssZmmaT5v5YvZv9sfWCHIaG7EQGmTE3bgB6PxSxFZ2QFFnmneMeti9lB\nKpiKUHJP1N3itGBRQcrMP6qMrnO88G/LFPYtU5bEB8V1AyAyc2OJPLbdW8bI\nviP+1flKqKxvOXeLFEgk5VrNQ1FikIQ5V8hHoqk0Nt3LMYskxI5oBnI/9jLB\nkKKrq+EWZWdVRbbYvyPZQ9AJxtEgmcpapyGhOiluDd4wCqhb5VOXqaO96VNX\naMN9a9AuY8IBfqfFC4aI7OLqt1+3y+sPAIhRydc77bl9EP0MbKCFPjKOfNi/\nx9kZFda5g809IhXRmmC/iMQnGVTfg7uv20yiKahHISrI0AzkqPnzVFe657NC\n+jZk+XTwCBSwiN6cS6fFGW51oL5/Bd5ufvu9NzHMigJrxZqay64UmwYFXExz\njM8voEV1VhzDtpWi5oYpltLGqK6+Ds1j59XqajnWK9+8KJInec6SydIEl98s\nsgm6JiuRYCbx9olP/G0nMeuk5vXa1ApKDZ6Q+HwmsJJiU3BrpAchdMCvRo+J\n02fePcj2ES4gu1Bx/Z/RWeWgTc3nGdcW0aUTK/Moqj1VIxoeIZ5fT6HJ784U\n0aqw\r\n=/5dM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBSCvbxJQ/1jqzGlEl7xIH7lu+Hk4+kW+gsS1r/OoyioAiBhnb/aiORLSilsnVyQvbsof/WBbLaQ6m7pGTJrdOHUnw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.ff6847aa_1541525181453_0.6321011883421963"},"_hasShrinkwrap":false},"3.4.0-alpha.c0aa2f9a":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.c0aa2f9a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.c0aa2f9a","@crave/farmblocks-hoc-input":"^5.1.0-alpha.c0aa2f9a","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.c0aa2f9a","@crave/farmblocks-theme":"^1.7.0-alpha.c0aa2f9a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.c0aa2f9a","dist":{"shasum":"26bd6e4ca28cc7a5d896fe6a7ff62f019ad3c002","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.c0aa2f9a.tgz","integrity":"sha512-1kfgpkoJ7oBdixIVavral5l8qk7gl+oeTMM2TCtGD2h6TQXez5b7kFzOk6KOV7n8IT3+r6eMfOntSg61reWizg==","fileCount":13,"unpackedSize":58650,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4dheCRA9TVsSAnZWagAAAdgP/2+qmBf0ZCxYv78CKWod\n9H/qMehZz+8Iv6aUA5EAiyartqHsrYMPRCvETi6G/7TU83/LVyVXhnJ7QL+m\nj9466fcMv3Gvf2PsWeYXW0aOmiuEZmu7ko4izkNeCB+kPg5x0Sp5XNFw2WB6\nY7pPjHeagEdfrXLwyTHwovB1hfMmHBk7bXGRe1IWYj0pPLVQO1E9M68pEmdN\n+POgFna+bcjsjyKyJ2fMh8autQlzP1FfdnJZBSksi7zvHD4BFrD0PN3dwijd\ng/1gYYJMW51oGskT8XJehm0DKIGVl2nhEidibH19LjsDTX3U9lFNysakVNcf\nRzHK523Q/CoI8MB67dRCiOi/5fBSStIuI4bKGIgIBVjwXUwcUU9jPi3BeeTC\n8OK0N/T1xfGLUX21Jo0CA/xPiU1KMQcEpMkIG89xoBqhgJ4aKTbKRCwR733k\nZoTzd4kqzWXShz55TfCrPEgngEQV/MAViYxMhmbR9Rnt6j2AKW/myHiJ8jcE\nffoRWfzXB4DPn9ajiA2/0tfeJ8EaJQHCk6Mvxyv0+4SF6jEMqQcbkFqndpKE\niBi7uISHaZ9F3Y7u3f0eb3fF6d8iIGIuBuPOYUZD0WiqiWMAPEDUgtKCMHyW\nAPwqhb6nX0ZF0TAS3DjiY3mWXAA8q+P9oM8irgzQoiTSsJhQmQXFak4TlJ1n\nkzFG\r\n=x8fa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHfxBk0cTlPVXeJVl2Akxy2hSC9O+zN6b5rfTCV5fZlLAiEA9bFKOpyCCBf92YP9v48f7jq91UF+hw3QR8jwLmV3Hz0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.c0aa2f9a_1541527645460_0.9460571944316623"},"_hasShrinkwrap":false},"3.4.0-alpha.875ee196":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.875ee196","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.875ee196","@crave/farmblocks-hoc-input":"^5.1.0-alpha.875ee196","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.875ee196","@crave/farmblocks-theme":"^1.7.0-alpha.875ee196","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.875ee196","dist":{"shasum":"ec6ca5286ba80bf0c803d9d62a7b6706e3a00e22","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.875ee196.tgz","integrity":"sha512-zAvhaClBXZRxyoC0d3H/8ssz7MA05quh7J/wT5H8DpYK8zBCZk/9MqXKFPegeAvrNhob+DkW0++5BNZqaKtXAA==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4kEpCRA9TVsSAnZWagAAeNoQAIczF0rKqN2qYjfiH95F\n6dG/gey/sbtM+VTjcYAeJ481fLQE5+dLs9qvyHRuOd9bnJIQkgRHWW+LM9co\nR4v4iNodYGLQAM0sqOKHGWwDbMmkG0tq8vG/NN6vYFsF5Z/FTlCyOs8tMh98\nwtPUgsE9cID4y9+efCN1dLHnaBOxeII1yV0h2iVLHxAwgFVDDxzViXAWRt4i\nEacA5GboYsPlif4nhzY4C/XYt1wvQ+n7Kt1wR03UE7qnYmaLHAydiDDQZ2fW\nF1YvYSZPJKU2Tu/JHta93Ac85tR/wXGdYmwdBkuj1Tg18xLG483v9wk3shrn\nQguI07tny53GNA36eagcRvnM7tZJOzvJA8IZ0oLiNLCYW6pOwcib6754WaGk\nStaeTOPACe0zH+4yNMhxrTzbSoRkHY4CXL6n4UHycrTDubtXGdpN2Wa2P3xW\nhKfblhO0xW0jkS88I3D6bGp5zq/h0V3H/Pr9vieYg54IijcMj5wIs7X0xj7+\ng/Bq8oJRXiT9C+EoQQODJk7zeRMCU7XXIG4luozBcRQ/ezeLIVmDvcvs6JJ1\nAce23Cp+Rcf4rekNOth9cjZAr2t1T8KAYN2lKoMZJAIX27rXOqybv3zb2rDk\nWV01X8DpemQKx7I8VZVK9leSIVAj+gpuo6MV1u8hGX/3vJi2ZhrwC5ht3Fa3\nl4RO\r\n=BuSs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHq08OSRaEjvEn5kkRYWGZLXUFCX/7as/SFrKsGUtV2gIhAL9FnAsYI2/ZvJr5QglzJRuGvgvcxW6EXDiLHUydRlKL"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.875ee196_1541554473126_0.16968021288472257"},"_hasShrinkwrap":false},"3.4.0-alpha.e97f538c":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.e97f538c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.e97f538c","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e97f538c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e97f538c","@crave/farmblocks-theme":"^1.7.0-alpha.e97f538c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.e97f538c","dist":{"shasum":"a9af5887978ab011fbf0b727710ca47c32328330","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.e97f538c.tgz","integrity":"sha512-ME9UzGSH2RfGssNWT/a7hUn7ZSW19DxwMHg/C3x2NOVP+8LQW2hKrK85xyVsSJ9K2gS7wQ1vhEIs9fvmlpf0lQ==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4k8WCRA9TVsSAnZWagAApqsQAJOU+H/GSCEA1BVuBa6i\nNWPG94bSNxeorG0ILQJLOWWpTSGrkq9Yf4gJ/ZSk/GmiLdOive//vsnQDUpN\n6jsbxLoOaGFF6JVvPmjQKVOMmgCFlwH9VzUU178ccpApobd5mfOfCRyrJZc7\nfpL/7HeWRq2bRUXOyEUMmgsEKxrUZdhRZO8UKVfZezeXj7VA6qJscRL2Douk\nogld52vtmKgYrk1vts9q1qvVcswhYU8hHqCFCVwjGfX1Uyl8b8F7RBZT4AGk\ntxwpS5GhC3RnGYOT+Ed+9xAh2ak/F37OuIE8xt39nlKfLVFlmlsgLiK2Yj92\nx+ximfBpp43hHRT7XQ38mA22ydWePAcQ/XDiWAB7DBo7qvzNhXSoTmYwKVo5\nKnluo+sOuQ20P/Xw5blGjV8XDtMhOmwrZ1Ep3o1eO2bHSsymmon+uPG3byN9\nNTJG3pPNQYQcFdnndn5OYqe+l33/uoBn2DBuN+IcdBR5k/ww9MwYx3f5o//a\ng+QL03IxieuUqzAbrIM5GmFUCRbZaG9TEBZMzEnwrdrePuchvryIlC2kzChk\nh/We0BhG7qlIesWBf7z9a9ZYP4MWMYRYxtRmryBige2XDQvLxxGOkKww3z3Q\n2gxQY4j80leRptAbeH6FLDzLmOBwXHmzS4H5cQlHuhz1PYpva5R6NGwn5o6C\nSI9O\r\n=FM4j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFOb6sLp49GqQ7MZ7Cl6CfTFPhJhL6sXaIDAKyROpQMvAiEAnusOtJxfGfjUarKe93QWMkJFQ7n091IHtOrsH7sjyVU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.e97f538c_1541558037703_0.7183773882872417"},"_hasShrinkwrap":false},"3.4.0-alpha.21e26729":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.21e26729","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.21e26729","@crave/farmblocks-hoc-input":"^5.1.0-alpha.21e26729","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.21e26729","@crave/farmblocks-theme":"^1.7.0-alpha.21e26729","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.21e26729","dist":{"shasum":"3f8fdd037c8ec30d8ca6ff366834e47d1ad41119","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.21e26729.tgz","integrity":"sha512-/mRnRJt3T8BxZAW7cXjB15IAQUZEbHSdW3LI14OH5Gn0eip618Se154mtQ5frr84RYU3VPpDnOHfTnMrj+2XWw==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4lbrCRA9TVsSAnZWagAAPscP/3C+ThNTxSK1ZNAlFMr6\npKx2NOvZdqBzRsfope+y/b+pFhVBJJhx2zX8WRwnFXHWLuGEp8e/+h2XCeME\nreG4tABy12jBlIqL6dLPn296jYn9QYXPTxs0FGWOIKlmE3PccfVYf+kdF3Kq\nk9rJs4FvU2LCpD44AVbWHMX5EopVoSMaK5/t4/Mnp/m9T9QxaKsRo8f49VsJ\n4jMFWf6rAVVszyFLU3qHR9LS7oNBq6BnoGY/c25sBmP/yzYnpQ+ARP4Dvoei\nyLGZyAmK6407GA0nGBtitM7l2b1PsbWW7XmzsPGBQ/pma6uCyzQLIErPaTgG\nhQJwgSX5ZRoffKgYn7QPUjXOLEBQTcza6bw0HVN4S77shf/lnrqauenSAbNv\nfa4GIdsoU855Lz41PDhNlhG8GkGl9AkWXq1XxD3dN/2JgnDPgXHIyoPct6Ec\nOtaNTTJlVAqAh1wC2XqWjm3KkD/EAQJZTC4zmk+emAW32qkR8ke6dDrcliuQ\nb8QkvjLEEJ9/xMtwLqviXJpXigOWTbOSskHGljIgS2GpfNMzhhwkarimmje/\ncGXVadB5hlW6QXb6Ur1GVWC8eKKVbADBOI5o1ymZM8FOqzYwjcFYM6VQR4Iz\nllFnk/Jqj28O6tI+qWkmiq9O8uZPgM/O09BIxTvrmwUf0kOP79ecyv1Dbr9m\n0Lx3\r\n=uI5d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF0CwP637MM0BbYnR/20ocSqo6ocVHaXIVn2QsKFqWVBAiEA1mBHASdVxciW9EuYsKwkFJeHXmaFinuFdteA5n+gqD8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.21e26729_1541560042778_0.880568954601461"},"_hasShrinkwrap":false},"3.4.0-alpha.21d9064f":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.21d9064f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.21d9064f","@crave/farmblocks-hoc-input":"^5.1.0-alpha.21d9064f","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.21d9064f","@crave/farmblocks-theme":"^1.7.0-alpha.21d9064f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.21d9064f","dist":{"shasum":"34471b53a86342c8c1efb744039cca9292760ccf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.21d9064f.tgz","integrity":"sha512-cMw4a21jvrsJa8cZRY3obUa+mfPwzvk9OLLIOjPOl47toZnuYgFyLHRNlukl2RVfNYqREfr8pC/1Namq80md2g==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4mk+CRA9TVsSAnZWagAAAfYP/203T39fVfU3eOaBlLn3\nRQnkzEURhUvWkfVTmoaxO/Ljb2BeOC1VO4MhAxIQ80P13HQa+uYjOtNAQegl\nhDr9IaKecxrH6uIpRFPP7MnuZxzmDq0rsIzQ3NpIX2oNhhak1qfVM4x7SIMU\ndFY639UlSpVMyb9JmpLZAGdSSpkmuscJX0qSZOf+Sa4fZJpSj+4SAoBE5MCw\n2BwpiMyfBw5ybw4z0gbXlLIaG10aF0/gUadOZtCXYAPiiwDBY3PvH5oyzXRr\n2iqkbh28ht5fMwdVs5BIGfTf3DTRMMP/RjKcHOnZBpkjufT/QmJRT5OMFtsU\nCHFIv5oxj5MQQzYPryMSzeroyMcudaL6Jm/yhMIpoWInMb9RwyQySIoiUFFg\nrtSXzCgu+g7A/Ya+MVWzU/QMesJNdTLP/cK/kAjMlXXI1f07QfZZfUm/7aub\n5jnFxQ6gamlMhYFsggxmJUCwZvSER2P1yGUiRG5QWAoRINCdEU1+JAXP/crG\n2f4bW6L2c12ihlgxWIJ1r7IxG6gW+w3TgXkRs37ZglvPGGjezzBEutPBXhKK\nGkpsQBb1NqPC9a+Ld5p4WFu/J/x6Joqc1xXpb6ESSVfYcdNUbXiwLCo5hokY\n1zUG6149rwwGa4MvsYbpZFftUfkw7MCKCbRJBJLzBMKTCOITWZT8E7zc0aRz\nd6u5\r\n=SQAG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDLxaihsdAu0NN9PnPpRgRc+8iEhs+4WE+SsgbhXcukcAiBHVtupOe2zqqBBi7OJwA2SD8yWt0ONqSyi7XqjIaAoaA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.21d9064f_1541564733506_0.34345379647873187"},"_hasShrinkwrap":false},"3.4.0-alpha.a3be0ff6":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.a3be0ff6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.a3be0ff6","@crave/farmblocks-hoc-input":"^5.1.0-alpha.a3be0ff6","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.a3be0ff6","@crave/farmblocks-theme":"^1.7.0-alpha.a3be0ff6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.a3be0ff6","dist":{"shasum":"96b04b27503e1dfd12300f8153617b11eb3872a5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.a3be0ff6.tgz","integrity":"sha512-8Bo3q8zBhmx8oxUvYQgWChdouJyH59IW3V0Cjdx1hwVNc/BBzy5gurmTfYQv6hpjiP7VcPdRRskY8nWTSIRF/w==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4omnCRA9TVsSAnZWagAA6VgP/3pVVzEpyoeYgPEGKux2\nRQdWituUuePQYF6W+ncVMsiSegCcWHcgPnjZ+1aHsSSgfGcAtUbTvsGca/Yk\ntsEmyKMbnP/CR6Jcc7Z+jZiTpBHXve8CpKp7O+Y5B9FOWmNMuCfcxUSVcVon\ngsNUP795eDmBK13fV4s/JCGvsjkd84Af17Rzb0w+OVNCDnU2hOs4qfXTeu4D\norkXEsGgVSZ/oRqZbLDDBzVVgMglhNjjK+MVscp12zpuYQ0FSJTDVErymSnX\n4VgY9X+lUmyV0NaVaww5L8vOJz89yEk3KyOCYihR8dHIrd7Rk2EczfZwL8o7\nBVTRfeeLMcuLcsW9y5m46dtJ7yv/Nh085KRX0XghUnQsa0v7Kl/8KPPWubWm\nLxCdlLjF83RD4VIrPimXPup4jEaYfSqAw8mEx3T+WMQtlwJij0DxHAit9gAv\ntZ7iM7MwIfL9UXK8Ov1akWeGg/vwTTW/kyvltx/YHUUWoEiLYxdDzo08PeNv\nbcH9WDlEoFidzTStBh0/O1HJRkjl5/R/1ei/m920xUz5ALle0W8UFvLRGS0j\n87Af94fDWTN/faCIcRYIhNocfJwCeeRfZPeUTMtarE+zzJmcCQ/DmO5n8wVX\njOjP02h1sXhzzCVBv2mFCkvchTJ0qhga0qlHL4Pi6seimciX7kYLbx+IFpRC\n2uQd\r\n=fi7K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWhUrLKoiJMiGNuMldCwJoSv4f+6fvqXgLTpxuBUvo6AIhAPesOFFO/c0+oWA7oBDN+x3/SottPeZoE6YmceFWQj9z"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.a3be0ff6_1541573030641_0.19931885681545136"},"_hasShrinkwrap":false},"3.4.0-alpha.a407fc3d":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.a407fc3d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.a407fc3d","@crave/farmblocks-hoc-input":"^5.1.0-alpha.a407fc3d","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.a407fc3d","@crave/farmblocks-theme":"^1.7.0-alpha.a407fc3d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.a407fc3d","dist":{"shasum":"bac5918e1cc4780cae454995bbed7fac7c6fb509","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.a407fc3d.tgz","integrity":"sha512-a1CFCdRd5aVIAHkaMOUGAAlSs+P/ttGrw5a2yUT/86FZu5pzG7NFR675AmDhkpQMIrBgbcwPN6P++tnlX1iGBQ==","fileCount":13,"unpackedSize":58231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4sJaCRA9TVsSAnZWagAAFJwQAJsT74w5Vog28Kh7jDwK\nB5rw/P8nKV6NinAgofiZLLJqnKGSv+lwGnl7IejJaKN63RbqUKcnshmec2Qk\neuaPDHpeKJVqkdZHD0wKp+/xWbzFajZr0tOK8BHpUTv7oukvjqruJy5i8j+c\nsOkjVoP3fhBrgYqqb/gYxNgtWo3nhhntyHwV6D+TiUaCDRVghHXjg9LSmCYF\n5IAT+Fj60hixDtUZIhW3hvx7LzrC7Z1776sxXcs4k0w06XF3EoJTBhDLwRFS\nLJyL2HoqlmtErA2+M9Cupqjv7jUZOJhnO6iMnukhos/w164fKrWjSvc17APd\nsJExC/E5GVKo039xN+lIb5ztIKsEqJ0Qpj3M042aeIh0s0cwHW02G5UeVeiW\nSMqufWd9MTlfhtHhmRjhKTx1GScTqwYb5jquTR2YOU47pA6pa7rDA93LX9Zm\nyDbfu8a+vBTISiJxytfIKZDuKiagrP/64JHnYCH4SvmKvs7PTzoA3sXUhaMN\nE++r02H8XgCdzTMWEtDSjXm4fLbBXFXM6lJ9+wb5RBTKu8U8OfGknhw2K6Us\nsEK0vBmlSn0K+XbJkVb/BcAt31OEWJhNDsZBuZu1skSQo9bI4+Kt2w8YZWSL\n5lIikVGM+rUIIVhsYPwvuzaOgajqCcQS9EyOfQK/OrA2Hfkxjdf0a04mKAfu\n6wnX\r\n=Y+6S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSgkQpOC1hBKOzjKdgonCvTCQUagzgxFrLFn6p27i7fgIgUbHfzRHh68ZNLyRLFwCWPL1GIOCnOiqALkRdcAplyFc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.a407fc3d_1541587546217_0.8289745621404461"},"_hasShrinkwrap":false},"3.4.0-alpha.b9bb0fbf":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.b9bb0fbf","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.b9bb0fbf","@crave/farmblocks-hoc-input":"^5.1.0-alpha.b9bb0fbf","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.b9bb0fbf","@crave/farmblocks-theme":"^1.7.0-alpha.b9bb0fbf","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.b9bb0fbf","dist":{"shasum":"c3f42666ac528045493a3b35e7f3e520a36533cf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.b9bb0fbf.tgz","integrity":"sha512-tSG9X4pw/oRVRlNBmnxwufjV8zl4siQjVKSNvHi503PnAGXlyw96r34M809ScGpS8UWuYpuScmjPndcySSmuqw==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4tdxCRA9TVsSAnZWagAA1vsP/3ssXdjfWvYGdzzZN5B0\nfAYJUVxgnj7pImkmLdfQZiczHIF2NFKKX28H9rusfsAkGB729ATFQkrbZmLq\n2/gSMLCiAw8FRUy3VRDUUEnLj2UIb3uVArX/3CdMdak1zYTf5QTRX/XW6s8K\nFOGkG3dStaa+dx2LRgEW1RxcGvaoDeTHiDXiQLxXLP6bcD3vWAuqyb/8zWEo\ntXaMxC31vRiDi6T8u7Pp1Jnbo6haBeru3Q5J+zVDJEuPQsawnCk+fOsPELZC\nOIv+KbJ3EfUGbfA7ph1i4SDZ3dghgoEqt2NrL/3PyViVPto+aIHStqLZU8Uh\ndebvi3xAEME8JMHX/X/O0Pnff1H5u6ChFvOZohh3ym/a+9X1EDjmEVDyEukz\n/Ewv4Nqe79kSDJGT5Yj6puyPcyQj4Dfrw9W4nSXFLa/3KTTa60l26Ln5FA5x\nRWQ2aRoAnxIBspbCBURRLFHZTrONwUs1h9OUy2/t5M4y5ea1bk7PlTqjH6z8\nY9tA0fXNyBR2iDoiQfkL/hmmtgMoY9UeYdBO6GDTKgIA1nfzFLmQaFylK/CR\nc1MH74YTglHK0YDoCEBpEjAbsVzbEjupft4BwPnm9PyNaJ5rjADtG5pFj7q7\n7wWyOWdLuyGvbtzoPel1P5x69+CZ2hw932RShA9rgc/xfMQAS08GaDKvyGQ5\nrij3\r\n=AANz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfZ56889BP/LFS59fDUy8b1mRjDKfMo//LY7BmKUUhdAIhAKa9iq5T6JHIHgoU+ANUZQIKQg0Kpv/9HKcgpzP4f5Uw"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.b9bb0fbf_1541592944696_0.6832930217797106"},"_hasShrinkwrap":false},"3.4.0-alpha.0c3e89c7":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.0c3e89c7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.0c3e89c7","@crave/farmblocks-hoc-input":"^5.1.0-alpha.0c3e89c7","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.0c3e89c7","@crave/farmblocks-theme":"^1.7.0-alpha.0c3e89c7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.0c3e89c7","dist":{"shasum":"08be31a5260680105a5a017ec67b6f90f855eab9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.0c3e89c7.tgz","integrity":"sha512-xlEmaMhBbzvg0KErymC5AAMBnizrLZhaJj7hg/eKxpBIzYYC2ekh5azDcBxc7dtch/TbMxNmMZ0ouDqdBHPUwQ==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4wYACRA9TVsSAnZWagAA6YwP+gNZYoOm8InW5e3j/C2E\nWQVWV+AQjdf6IWyzaX/cu5bSEnQmuAAX5gA5ZAJOIS5sBr8DhMpygHO5XVSm\n8TZTKdvX6djxhHQI5IiwHqyYR/LGg8Rc1IJ1SZieRdDaYvBRXVCJ0mAqWahL\nNSZYReeOzTuKSr865xPSt/YwHwVR0JiukO4LEak2S1rFLUVVjY/7aEnnfQ7m\nmMSJ3qDJeMAjqlY/itKHtpwYKp0InAyEF0YwIayedVGbHUFwL/JmKc1MWdlZ\nb7nt31Wqig/VNUDo7rcYAaQ3f08tbmKgzKQ1X6yzYQ/pLoeP3ycCa/mY5Leg\nfGbBa05DelUiyGt2R4NV3KUceRoRDrk3ZVWHdUmw1EmZ0LkJqSW8DQfWA3A8\nMfF/rfqRZ6nnvghGYowPgTm719Zti9Lkoq7a4lZvJmguX4PQGysQouSIXydN\nm3XXVuhqa9Cwq10PPAwuI9ktDXQUy0PyycvBZq2HS9wWztu+k+XysvseAokb\nE7nIS6gv/F38iXFegAD5zoh01s8ow9MeYWUmxd71fukuxcZFMc64VURNvpCC\nNRxd6C+5j0OsbZ3OD1frkAgtwsUdLMCNJnVbaiYOAh4B2f3OR8A3vxTz00ZS\nJCEWV+3v3S/9bGuoG992iyr90qGUmS9aFPNpPqYkaYmv58e/GuCYhAzKWpeb\nHykj\r\n=M8rO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICpgO/k9Vtr8xjUXA/EHJs8UB4t7waEUNuZWoTeCxAN5AiEAtc3Dtz3zGaGqyj+OuMNKz2RCHt2rT/15X4EJTqG3qJQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.0c3e89c7_1541604863268_0.7537670615411021"},"_hasShrinkwrap":false},"3.4.0-alpha.9350a75e":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.9350a75e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.9350a75e","@crave/farmblocks-hoc-input":"^5.1.0-alpha.9350a75e","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.9350a75e","@crave/farmblocks-theme":"^1.7.0-alpha.9350a75e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.9350a75e","dist":{"shasum":"6787c67d87d14c7c48ba542dba18b0a9774029c3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.9350a75e.tgz","integrity":"sha512-HAv9ZxQ4jwt7X/xKLuOnp6Wnwf0aN6a+uIyNeCXIoavBUI2oM+sPsOftzwkeMS46cCugak9E04w3BAiwqPCCdQ==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4wZ3CRA9TVsSAnZWagAA7NQP/2HXgMZ2GIAWsW3Dy82a\npBWLxDFMJDrsAcK2HPJNTW6pJxrS4dbOcMwjipWYFNBopO23AHHne3DLeMnn\nFQlvfAFHCTxMAMhwyGkLHQfpfA67Dr2ju7RnKun6kZ9HGNs6pILVpJjHJ9qY\nRKdf12MWrPv1j8E/79Ohea8QAaemjHHcLz3J60oem9PlUvJ3kCucy9XVBodu\nnM9rnaWuuoSHnO7dD9zz93LxCbglWWDvkC53JQjQHGA6HrRXFvzND9vb53sE\ntPJ4BA2MYp91IZOi+GLbY/+4lyysxOXL+lAng84sWg/OURlV0NNf7iDWUZ9k\npotNOz2WGhY7ktzzpePmiYjAwo4j6YQ8XE7gdVDV7ke+BmHIxhTEP/sbEhoS\n2AtD7HBDjtc7AvD/Gn4qZe3o44vE5k71CG3xSodMhbt/WUwe31vfIAEaZ7mc\nU0whYcSF+3XLoMfk4JlWKR26yvyxTmGFKfYTUEMqzBaPOCUtjF5+83FjFfMk\nrFgfTsaJNTFBIUXlmlqhEKmPcx5RvP3VSXLm3Gvm9bg/DIHGoFY0RxvEIE3X\n/fDbqQi4PiXFF7ZpV4EEYCLFGORpaIFy04MwfRh0rD5IssqOdhqUEghlAIbm\n+PEqz1CrtYVtFOp0/2CQgkrj/tAD9JMgWFD6EtwsrYVSl4vBtB6bJX3fn8hv\nV9EJ\r\n=XjH5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTc1OOQbJ0nXAQBIRHUi2vXVskVsL4tcdTxkBIGXnDHAIhAIjLnys3rouIby4yJIQfV/dSf7OKLOQ/Cwlgn7GYV0pn"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.9350a75e_1541604982683_0.796738982350933"},"_hasShrinkwrap":false},"3.3.0-alpha.3825471f":{"name":"@crave/farmblocks-input-text","version":"3.3.0-alpha.3825471f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^3.4.9"},"dependencies":{"@crave/farmblocks-button":"^5.4.0-alpha.3825471f","@crave/farmblocks-hoc-disabled-tooltip":"^1.2.0-alpha.3825471f","@crave/farmblocks-hoc-input":"^4.4.0-alpha.3825471f","@crave/farmblocks-hoc-validation-messages":"^1.1.0-alpha.3825471f","@crave/farmblocks-theme":"^1.7.0-alpha.3825471f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.3.0-alpha.3825471f","dist":{"shasum":"1bb2d90e98c12081a1a2fe45fbd22de7be42470c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.3.0-alpha.3825471f.tgz","integrity":"sha512-CMUe9QSF+Buwn1v9cIgK3AwJxtQ8VkzGZ+9BNzj1PWsK98nzO+yoHA51xEYhmeB1FEm62fOHs/YZJ5RY/5iReg==","fileCount":13,"unpackedSize":56250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4wtgCRA9TVsSAnZWagAAOCcQAKN83FcEWwZYerD47cMe\nSce8Dgo6cp6uV/TXfQdleE60HdYtaxrKjsXlh5tv/HFayEybYJ+ufERq9lH7\nglf3KuJuNRW7n3oMQXkigRXbsOb9gpMNuSv51MospUiLn/FrDam+rWFRRH0z\ngz5dEwny3A+iyjQtzFWv/rJJ6udkeeFhLs/F4Cp+UucKGVlWcTIzkcQ03PlT\nbfPZpODwsVIViuR5gVVN+5HHSz+GsolyM9Vnp1rlc74bnoF6HAsG7lDLZjOM\n39VQJ72FITQX9ddyOMml6RfmMSHP+ChR+WMWm+/v/BSsyyD+MuQXQH0xngln\n/nqLMZbAQ6uBY99aTGT/Pfx6kUTRMbKIN5Kutc4M2ZbRXFtfZcGbLnMXWBmI\n5ECwqEaFK0fWvfJW5yJ2Xr2XS9OVt1p+e4NrV4VvoAy3Fhav/9lPSZpdRYnS\na6aXemJ7JjB8HEdTfAQvCfi23G3jvhBLuod5aYcFdZqDNd620/zmNI9htliD\n+AmwR7W/5iBDwrCbw6BUFnDdE+/WuYypvApnDPSsFEgA4uT86uWEJY/pkbmS\nQuoaqnPyQG0JwSsYwkomU3JGG6JC+tfWc6CHxNZoOfPpA4s8eGxjp8I2iv0r\nbNL0t/kuIGznaLgyYLppI/XOYAm6NgMrNIXeM1+V3+JbJbTrsJrL5DhQHoLb\nxLQP\r\n=8/BD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGgUVOHgsCSgvARO9KaOTyiF0s1A2EVPBCvL636VCfYQIgQ1vMRhipnlIe7hjbGH7XADCap98/QyyC2sMCCHu/E4g="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.3.0-alpha.3825471f_1541606239484_0.7455392642885692"},"_hasShrinkwrap":false},"3.4.0-alpha.5af55816":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.5af55816","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.5af55816","@crave/farmblocks-hoc-input":"^5.1.0-alpha.5af55816","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.5af55816","@crave/farmblocks-theme":"^1.7.0-alpha.5af55816","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.5af55816","dist":{"shasum":"f031f633e1db648cae9dbad9d5e0abffa9cef0da","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.5af55816.tgz","integrity":"sha512-0eMx7lKS3k/H5yFNiWdBaSaBXCTNEL8afbFGR6KVNxGBLKSHgf1zHaR1F5SpAVUBRMY0LSjun7ZJdbstKh/F8w==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4w03CRA9TVsSAnZWagAAYx8P/jQnsywa+iL2uWXIOZuh\n4U+cjFIE/72mAAOUoYISnJ7i4AtaXH4cttddlLcZitgELdwx4t5abuCMk5WE\n410lE3XVkspmr4CoK46ZauGOfT87oWwJ2N8WJCNPJso7mS1Fy2QbeGE9HwUW\nU0xnsxnwQTPSEH02EkIpEbaSjNvlQ3Qs9PxbR1ZZK8Li9FsyU/hgrVbaesN/\nPG1nRTQWgT9wBLhxXsinRQFCMcUl4ggwpmxeOo13YrCOLKVh1S7qgV1nT3Lx\n/WyzURSGopWhYoauWuAc/0aDLtN+yq0iWNS5BkPuf+Q5lkJ9XG24AIsZ7/7E\noy5m0HYsdo/QdbVyzWgiagQF9VGKTafpzaSaQZPkXcZGq8Mq3bv9S92jtneJ\nPK5XBLurDMHb/kQmn6FcJH9MLfbmyMacTSkqmuFu91Y58j8PkjEDxs0B3jDH\npLt+xgGjuIRgPARjrTYVI3Lc9QOSbLIc7GTXfJJt8uWx0F1zNXAkoZnh0/5W\nzRVkXoTyNoAtK2PVvpRBnxYzaRuqtjd/B8XofxJn3z6AQlV1BRk5xALpNZig\nhQ0Cn6+RMm28ec2TB7N5rcvWWRnRewWkep/S7HiUvSEow5Klv8cR9iJ+HJ4w\nc2UXp8219dnN0dwje169FaczZLtyh3765HXFIpZS2/1FY5ZNsU+9YXUosnTN\nBHxq\r\n=uLIq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHH6UlIU0hcT7kvOAcVsvRPtjGi3Ti6ORsWGRvarl8AlAiAx5/i/mLYBBhRX/lW6JQsJBMHs50MPFCXJyEg213mxUQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.5af55816_1541606710911_0.1444005001256885"},"_hasShrinkwrap":false},"3.4.0-alpha.8de25fab":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.8de25fab","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.8de25fab","@crave/farmblocks-hoc-input":"^5.1.0-alpha.8de25fab","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.8de25fab","@crave/farmblocks-theme":"^1.7.0-alpha.8de25fab","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.8de25fab","dist":{"shasum":"70e33be22f149e260b0715513979fb08fded5f84","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.8de25fab.tgz","integrity":"sha512-KtGzw/9mAfZWL+Zx0+LI6Gvv04Z4HFEbKimQ7B3XZ2rDt19w0csuieWkbSW6mbNxINxoJtaqQWPlquV7g4qmHw==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4w4DCRA9TVsSAnZWagAAf30P/je6VmNbKRpTF0jaDsQz\no6gAv2+k/7qWXOQId1EgX4mm3VGeIJQ9ZOxa/lmzz7oG3c6BP/UFQ4KHZ3SS\nlNbsPxBha9pRKObdT5nyFwWAeeyWTKJtKBshBDdcyTuwN4/aXkMPMryDd+y5\nrkusOv83WXX8GxpXRpHX4T4dFhUp/16IgbIiwJ0V3jYCTSbnhDnVz0mS6SKn\nRd4MlMgi3oNnAcFQtx/GXtcGbjFdMoD+5gCP6p2Jy0xN28gE+XhpUeHHuKFo\nz8fL9jXabcffTuer56C/nYJ4Ui5k8dBsJJgSsilL9875yL7sL9bx9hF9ebjI\nkj67S0iwj+f6XjhMq2TWJH1rFS+3Uj8yZzRu2XvXm4u637dUdxRXk/brmOh+\nXNpt2RIeNgEMChoY11W8+/bE573OoqSbv3NFK3//UvNhIjaELv3Qq4MZuALv\nrkG8i9q3s3gm9RBXZv1VNtkBTA2g6MIprO01RYL7+EEAQcRGHb0wflQV5luO\nAa1/jxL2YfvzbI5JApv5qQr++xWI58ycF6/EIyXxjKHPcrUZsVUL7nagJmrq\n4rLo5KyTymAIoAXtBzQe3c/C9vRR+BGRx1T3PhVtvLVeNeAxQNpezgL6UkhQ\n3u82CbPTJ29BjLZzxo5eCcs7CtqMDVNUfgw3fMSNQGo86uVBsWYGGz20W6Nr\nvipE\r\n=YB2b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvHbiyRFsqSb+TaoKTMRY+vhocCTNWZEMjQ/bvkXzF7AIgD4z1G6ZYF3cCzYmZpX4us+4Yd9A2kbM5z6fLN3TDiWI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.8de25fab_1541606915121_0.26115537076476913"},"_hasShrinkwrap":false},"3.4.0-alpha.e6e80ba7":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.e6e80ba7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.e6e80ba7","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e6e80ba7","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e6e80ba7","@crave/farmblocks-theme":"^1.7.0-alpha.e6e80ba7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.e6e80ba7","dist":{"shasum":"0cee7c2d35e395b8b820fbb8f19ab4d716b3495b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.e6e80ba7.tgz","integrity":"sha512-u+/BxX5oz9qJPSDceMTnukrWph6YSxkjiwWXyzbU1e4ChvArDlwi7v4W43M8sWnMGTkn3yuOvhfsR/qMjxifFg==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4xNhCRA9TVsSAnZWagAA+KUP/29EgLYMpoq9HVK1yGdp\nm5OuXQzNl0icMSwmbfYijmSzQHJDeTgOTV2YFKMVksShvXBKge4r/aXA5++D\nAtKAxhraIClLyila5W4NIaxOjat5UZYX1uGIMK0/I33GIJ9bDIYVs+ccbzuc\npTh1BvHx2d4PcvAYuPm67LXWNAVX3QvmZjQsA8vXKsdAT8OI9TzjBILXx5fA\n4mu1YqELzGxnFFqRU6UsUJ0csT2OoV9iclH7LxARtkLqJGA69wnbXRWDQaSt\nOx6rp6joutew0YDgjR3ofS/aR6QsbhGhKPrED2XV9LbxJo6NNSYUBJu/WtM9\nCBiArkkbQSbR3bnV23cMfdNvSt2js2YmiYfPxrQUutplHebchFykvR0XbvEk\nPQq3W56aReG1AztSRdJZDPQpI/dUW00Ar0OVFHDk4BVrOSq6ki7uwpSPo3wd\nnLFQSuIvFGJVh37xsEceolShnBYxSKNflep6RYnylhuQ7JkaQ/+oRgkyiael\nmJziNmkOxyqNX5ep8/lxFoZL/ATbdta4vnyJn8a9mWhxv5MwnS9br6cgFdwQ\nhHn0WGHXwR+RE7fmARkD1zWQilrUPOUyn+J+GSHC9kTwbqgccE+w8RysxCuy\n2zr241tMjBW9WAzThxEMM6PkWgzYgKeczYefKXReqJ8I6zOoZJilUB7+FBCp\nrIlw\r\n=F78T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA5yFM5TtCUR/uXkhYMgxpEhGUko9k6psZ4t8+ek201eAiEAhMycbyfkYwHoOOXkEUXfBFGxMJGRhtuMgIkRtCncXZc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.e6e80ba7_1541608288461_0.7880556224032027"},"_hasShrinkwrap":false},"3.4.0-alpha.07e9f012":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.07e9f012","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.07e9f012","@crave/farmblocks-hoc-input":"^5.1.0-alpha.07e9f012","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.07e9f012","@crave/farmblocks-theme":"^1.7.0-alpha.07e9f012","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.07e9f012","dist":{"shasum":"ef046525077f50f6cb0c37de3e135de4afc922d5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.07e9f012.tgz","integrity":"sha512-XLiw47bX/NSyooIQkLJVdZveApp8iZyHCceYxqSSFwPRVaNvfCFNIIOOAUtFkgAsdzXx7ddgx+oEdyE8rmZpmQ==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4yUPCRA9TVsSAnZWagAAjS0QAKRh73tdj231JqJlDdDr\nj20lqn2zb5LwjG0c2gEVNeKiP8GL5pjR2++4MsMapT2Hjp5YDqNQiWixqejT\nyyDofDlHxI1pN5B7PjDa3RnGr0px7/J7vPJvl4CzURJJmCBWwE4dz8W/9H18\nZtQ2K2NuR3qwcniSn0/GV+5Y8B0Qv9zaE9SJCppsVZzNRwsKtfiK0EsUIoyx\nopW2hjQLCh6fwxFVJp3A2oWfyOOdB43evfJQPLtCh2G7N8/se3/GJ5BPQG6H\nt9rDlJuB4zlN9w6I2YMAJo0GnU5HnWk6FYp08zpdxkxlWO1ZzJ4zkU3YMT1B\nUmOqa7t5SX4P1Q0yFbn+MsnH+xrP9OvmPlRmHzrquYUHQG2uJKfzi2trP1ZI\nZERjt9SAHEfwL3iEiTgrfz059UR7lG59aBnGk48e5b8X29IxxbjezvpFmtpi\nAU4IeJtTCwO+SNOac2w1gyPFKxJC0QVsussYtSrqLOzSozYGBVQ7VNKDldU9\nHy6TPUfiUrz9DNVaAys7v0a3DnXpbTyTuSQAKuIlN369tA6GkfzTywZckuML\n0jPzTmpS43tT1j3KfQT+EjZP/BkCEzhdhhEuwpSGeZSIJnLjwDzQxHr1Wu3v\nbqet4+vMCbqm3OpYZu/qWg7bJ4Qqsg+LGEJ1UrzoqIXIf+RHA9ISXmsu+DFA\nwkyP\r\n=VtW6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7B0ZdIpxcDT799dWW23bgPEu3zZrb9F99rU+RTcaAUgIhAKwtPOvncaH1LMbt4t/JpVctbsXQ0sx3KL7PGfhhTv3Y"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.07e9f012_1541612815171_0.9274816755881563"},"_hasShrinkwrap":false},"3.4.0-alpha.1b289e6a":{"name":"@crave/farmblocks-input-text","version":"3.4.0-alpha.1b289e6a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.1b289e6a","@crave/farmblocks-hoc-input":"^5.1.0-alpha.1b289e6a","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.1b289e6a","@crave/farmblocks-theme":"^1.7.0-alpha.1b289e6a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0-alpha.1b289e6a","dist":{"shasum":"3e9031837a84a541eccdd5bd8bdb32fd8fc95482","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0-alpha.1b289e6a.tgz","integrity":"sha512-uG+4bNixb6OJkY5Gz0x7SxLl4w6U2ORnSkitBa3ykV0TMVHrPTIigelRwFbwTCfG3lKGN6QDaDQkWQk0WfPGGA==","fileCount":13,"unpackedSize":58605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4+WRCRA9TVsSAnZWagAAh44P/3WUGQn6tee7tcshDcA0\nlpU0mBwVtb3njYR6mEUabq1wCBtNsFV+I8fRvHoag2IPx5fTwky/E6fGYFBJ\nOMMC7AIUYlna7r0OMuv2d5zdt4SVulmxC6MITEG80oK2mmKRhoRWqah9FEQ1\n7XevdQtU6C+14fGci3lzHlhcixYUJ4Jd3JRYYAl58okv4nweyxjY3uxQxGM/\nlp+zxEMg7BHDsHvIeYWaiybi5NfCzefk8Q8aTUEafBlJcYo5W9ATLxEj4Qql\nSxjqvCfWPRnf405BDnBh/2Za8g471HLQ247XImxPHo7uX+1xrSfTTtqvvMIJ\n3fNJ2Fql0eV9TWC5dV0F78EQHp91E5jqVmOS/GZr70M2g8hmh7ZGCxWcbFk6\nXBzmI6TbfKd76I+etfAvhxxWCDmv84ja6nzb9czksevEWBlynIl8192syWPP\nb3we77xGXv+BUdSMWi8ghRX3vYYfgp/Tx5pv+McQ/9WQsQJVKXG+XyRwcw4o\n+VY1Xf2tr7j2mE4rJh+W47Ciz9Ao2CsaWWZaY8BkphKm2Oh5t98X6AqWBLXp\nmf4oNLeuHiRPCAg96MqhtsxTNJkkmKjISaWgmAQx8gVvQ/Q/4RJpz7Tr7/hl\nac/hSqnAIuO8eR6fdAWO7aOUphvPW38wcgzs3VLi/5fcTTFzUgBf9OwKDzKb\nks0i\r\n=neYf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHGe8/BMKR8gi+48ucGsKdtvPFxb3BlHakzGZSTzDFHmAiEAiMkJC2EL5tZ/TxxJm1Ny3wD42cdilZn4Rp0tMbFardI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0-alpha.1b289e6a_1541662096638_0.0028487292079091286"},"_hasShrinkwrap":false},"3.4.0":{"name":"@crave/farmblocks-input-text","version":"3.4.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.0.2","@crave/farmblocks-hoc-input":"^5.0.2","@crave/farmblocks-hoc-validation-messages":"^2.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.0","dist":{"shasum":"0b5b877ad952ae857837cb786f60c9a55f498586","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.0.tgz","integrity":"sha512-HlnUhaBg9+McgTuyPoxxg706NyKmMBYOe5nlx3ZVRBWpTqavE4tlu6s6Um+kxF8/ZrppiT8g/irauRF9jv9sCw==","fileCount":13,"unpackedSize":58485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5DG/CRA9TVsSAnZWagAApIcP/1D5w4Zw6bkxmb7uaQqt\nTm+ZXl+O57DLHn4qCopvzdtpNfVF46iUJxCO4mfByzNPI9oMf1lcnB1co/LJ\nKJf6xcNpbEkMmzx3oq+8jcr12SXXchJtiUNF7qqJq7GgZdCHFcvnUCe7p1/q\n/ejmGG+02hRkdFsUFUMmBWBqqLPc+f6FvwGwdmEwingtVgj8xcnFB6NBYsyX\nndxnqhCcBgMXwdhOih3w+NZaJeO/QKDxPMp7k8WTJ7SoewGpVoZYmAztxXFc\neJZIAptA2HMFnGcidnR4n0+KwdvWwdONtJkKP1uPYz/dKmIH2aJSGvm3hz1i\nRdMNdHuHGkHhtFXEx8kLkzxexrNVNOQjP/fZn0OLqETSjyuc5Kz6JPrKPHyS\nnNSgNd8PUGdnvlKI2d/UZCdAx5NF4sfN8nsBctW3TmNuqFOI+0y7wFmzs2dc\nXfbVYDi5aGRFLFC/BXQgUIWk5D6BSG4VWCkKoUvwxKnjyGLm/8HTSPZECuGa\npo6JVQZnJ2BcNLX/tUyGsE11z0lmKjLaTEOUfFbmQKuXIOCIzPXSMCgbaCY9\nRZm3M8njI/N30wyoOGtyTh+p4Xf2bCS0nnMeqEmDYALPEOGhAhusGFJrRTLa\nJ0RUOaeq+EspLpqcZ91jjeMzC/2QvXIMEsmf3CF/RnOBh3gJ/fW4OxgL/dpr\nm484\r\n=h/X6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwAy2jlbVSGJBrnSVcGjlqxPwVF3dGkfikPFnWo+5AmAIgWMKePlAeYGlAU3Cu4Eud6LYWaRrfNh9R/u6rq/au5VE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.0_1541681598941_0.07960442222595776"},"_hasShrinkwrap":false},"3.5.0-alpha.3dfab596":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.3dfab596","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.3dfab596","@crave/farmblocks-hoc-input":"^5.1.0-alpha.3dfab596","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.3dfab596","@crave/farmblocks-theme":"^1.7.0-alpha.3dfab596","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.3dfab596","dist":{"shasum":"314a31661f7a38023343cdc81d6d3cac20040cbc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.3dfab596.tgz","integrity":"sha512-xfZCtFvTYTu77u+p0gXGe5vczVQrmW1Jv6Sg6w/aKepjFHixylll+UgCuJDOCKRejALHFjQMKnYhKr4ViiP6ow==","fileCount":13,"unpackedSize":58844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5DoLCRA9TVsSAnZWagAAZPkQAJrhN6tPMkRerkLOhI1K\nT6GqnZqhyXXOLHuNr+8YbiVff9zK6nZ2N2eRUFqHtB0dBnQZkXo0852GMS9Q\nRIT2qw3ti8TwIwAwAlU44VsiOYZJrHHRftbXJWfMox/rWV03fonbsIrbBsYz\nYX4Owv64P+D3XZnoEUnYYuUHL4aSOvYEDfMDirnUpSZ5JUgzGxjYBJex4lUn\nWSvvRmE9p8mWvxe7eM2rvUpLJ5EMj5O3bmejXxfgCrDKDQqF8z4koOxIgwQL\nnXJpKeQSc6HOhTwL83sq9lMrzCPCmXiii+WRxiVmnumhIqCLmoDdkVHY7HNB\nl0vqv85WrqQdMaf2swEwA1lq0r+5u9OJZHhFMtBrpENCh0Ex/Mie6TC6cPTH\nRtm3XY3C2I7K1VVigbKMYRSFLcvGFTzJevFGh43/JZp55nzcfheCP3A9NZXl\n8Lcc7/UQVDkhrW1ao/toG91cgtqldIeomxapeSlKA9AZbO3/vtFcmAZvuW03\nmS5blc3OP4tIY8Va0fj2p9FB9NtPiZc2JeOpqOu041JvcULWkFg86fBRCmin\nyuVHr4uoTrJNzZnqx5P6x/3joNz2rntTPi16JR9YuIOKMZGBX84lhcfeW2AM\nL7EcB1M+TrgthPAPE9ArspFVChj+ELEBZKmYYvIm9sGVt+ADvMG1N2Y+OOQG\nuwez\r\n=plqU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHjD9Dh6th19gKFxvmbRSTdZ7CWMlqvQ0Ph+6rq7LDggAiEAkI7EgvYfpmSkECHFfTXXCqSzII1igkeZjWFAXx77pAA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.3dfab596_1541683722102_0.6903970927905985"},"_hasShrinkwrap":false},"3.5.0-alpha.885812b6":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.885812b6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.885812b6","@crave/farmblocks-hoc-input":"^5.1.0-alpha.885812b6","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.885812b6","@crave/farmblocks-theme":"^1.7.0-alpha.885812b6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.885812b6","dist":{"shasum":"6fabd0db01231345581ca67dd6bdc381415c1d08","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.885812b6.tgz","integrity":"sha512-k527/QxSROjnFUO/Hn0Ikrylcyqff1D9JfQn4G7Rf47lxH2A+f12mKOHSHoePM64So3sV0v9ghrom6mqfSrEPg==","fileCount":13,"unpackedSize":58844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5FNECRA9TVsSAnZWagAAJvYP/jCsEZJ1v905N4QtgdDz\n9Q0xrH/FiYHdRq9CrbAFHf98vRmxSxA4iVTd0op37oe2hyt7ULpz+upnit40\nafluwn3VyxPozJZ6wdp0uYCtC2Oz7YaifDSxnVFELRD07WUHGL76wj5TjFXC\nK9oNUDWPURZ3t3Uxk+4OJ1nJytyJMaSOCnbz8foh7oAp3ETyFuLjNmR8XRtD\nwxZLLe6ZsRKnllZZhRhueS8QLiVRTMOp81B674Dkk5UY03E69Spetb/92mKf\nNnrfvT6iVjihGuHAWVWyKFbs0+0DiiCir+AXrq7fHDO9AKpUfbyhFHnNN0SP\nL8N6lmRba1nYH9GHbIz1Ij0Vx9/IqMTRhltRGjMVO874id0KDRq5mmKSHGd0\nQKNIQMnXl1C4bYyJCXuKf+mbeUzHl9X3ov54eo5GN1C9JnxQRw+UWlsfiTrI\nFU2/UGgpfR7SyOrDF4spoFxstKpHDBJBS0D/nn48GXhmlT+92NtbBRW6l5dz\noUHzx8jQOlJvjpOGfe24VjMdh26603m1V9ee0fngSoqluCgqt6VCPuCMYufT\nZN+MHvJOYU+p3rMAR5I41NX80BiG2V740ZOcHqdAh8VH1FPrFgg/jriUj8KP\nX+mhGbodK3sop4kzpQLVzSiBKS0DfXLbHA84Iuqv0g55cUpf18IUsVU058Xe\nGxzO\r\n=mFAV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBG3gHcdRMElSVNaGmlWhPG4zn1yRmD8mmGSFvHQH4xBAiAnUtzkloBbH1IdyF/Ijv43fVvfvk8m8ZEVWbEFKYS9tg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.885812b6_1541690180332_0.8786376239295259"},"_hasShrinkwrap":false},"3.5.0-alpha.d2eda2b5":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.d2eda2b5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0-alpha.d2eda2b5","@crave/farmblocks-hoc-input":"^5.1.0-alpha.d2eda2b5","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.d2eda2b5","@crave/farmblocks-theme":"^1.7.0-alpha.d2eda2b5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.d2eda2b5","dist":{"shasum":"d9e5038d970afddb0bb3f4e58faa80c5b49e27ab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.d2eda2b5.tgz","integrity":"sha512-a5o73ln3p12OulvbBudTvDx7vpP1JW+FWKIM3WugUGZehl/CsM6flypA/cAVXe+myRNEWll+290cnPxD/dSnLw==","fileCount":13,"unpackedSize":58844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5IYgCRA9TVsSAnZWagAAQOQQAIw30O23yeHrqUu6gtXr\nqU3385W+DlScjwEg7R8KWcyAKkKLqZUGq+7gchjoNilGTogW1NpokZuggm/j\nL7v4rgVfB01dwc43SL+ptjxWobvyATiwTbhrw8nt34FvwhYKblIXHlTXVHDX\nX6E5EonjSE3M+mlcEvwD5EMgpqY0LXKxh925udVARtpdfL2KZfJLzc7zWe9H\nKU1Btrtn5PGC2OZxavybkWVG1VqOCnJh0+axVdkL/po4MKjGVbtVvKMOoXPn\n9kAGrVR8TrZv3egwLSnUbFRgYiyAb4EtML9fLb+MGupdVmDxC5jy8g6Vc48G\nS7bECXyOGswnc/zeu49EjUL6Yo7eVMBVaBxI1ewkhbvqVBV6Pt3a8gCfc/q1\nOxZKTM8+VIfRheQTk/ds/MzqbElODUDfjl49A4LaIGikN81agxi1W6b/QCSn\n9xoTeLQnUjfXJ+s0PxcK+KI2khIdlZmEPBDzyiWKp/xlkXWaEUGST133OSCM\n3W+oJV1pauOxctEDjSKLNywo/whcR7f6AmDE+9ffSWzZg6vsoAp915CjP+E5\nTz0NZxMlAysN/8f91debUlC8mY1h5mWDKxYB0U5XOQcAKWH8rPSFnlO8SwV5\n3T5VACKTzOM+gJqHa7zLei+0VC0R5ncyJWKpWzinNf6l9xO/Q9mPkQOGAiO5\nN6c4\r\n=ffJa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIASBfD19M82IJgK4DxpWHndOMxwZU0tqL9zL/oosW6ZvAiEAo9d1RwbodHCwkB0/k8pQlic8oWGh+kHqqpBdyOINubM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.d2eda2b5_1541703200028_0.8313877869921249"},"_hasShrinkwrap":false},"3.4.1":{"name":"@crave/farmblocks-input-text","version":"3.4.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.0","@crave/farmblocks-hoc-input":"^5.0.2","@crave/farmblocks-hoc-validation-messages":"^2.0.0","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.1","dist":{"shasum":"207ff2a153c9bf7693267d501be1b981dd1425cd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.1.tgz","integrity":"sha512-3YlXHG6TYjmWAe9U7aPxNJth4QmeXLGMyrjMMgrJN45dHX8JDRZz2CUZhNk9/v9ApfoAzBHx6PkRB4PdgXiAWA==","fileCount":13,"unpackedSize":58725,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5IiTCRA9TVsSAnZWagAAUX4QAIVA0VmzhA8JBuuXrAUD\nRfhUEoI+3L/9BFln7vTILzvht9oAi78Gldc/PIN4sXRaiuuf3GVvvx61glyW\nDSl/rvCJwvESl+Uun07j5VR/4u/qJYsReAu+7ibBHraZ+ac/x32DoRNOb+Qg\n1kdEUbTILSmUfqcOTVLXTHPzkj0pRvblN+hGTQdG+qB8bGL/wpBxaOQI8hzX\nlzEYBT03FfLTRGlLbF/tqJSrDKbf/qS1377xnmagxdrNK5c29mjsshW7/dmt\ngFItSXO0VPvq9rcfhxYEUc0xNLulTH2zPt58r6iXX1r560z32iRu/yCIkfIp\nwLTTcD+d2AdS+4iCGzf8umg3Kukbowk2XjtwFd2O4GQ2Ue2to3A09L0KDEi5\nzTZQXCEasDFaAT7cUaR1KvTMoTuYvFJKQ3TKI7PSFrpboxcx0CEduNMKSTuf\nKf/5lsJewRaYe71pqCpV37Ksm8qvSr5+TSO/tXGn7eShDvpX4XbZ6VtQEy+p\n50j9SJY7agmDns0PWH1VmiWnPrvxxyAvQUr/VY1u9kmjcF7tOrMUhlhS2EOe\nIM8ckYBEKsdIQbXPus8R8iuJZ/xf5TmjxnvM4KX5hungt8SCjM++fL0mW3Xg\nf3vr4jEOSTZpZZw0axiAM4JpG3JpV8ATu2BEQeOzcvkwNim6AXJCBIt8y/Lo\nrv+s\r\n=VuQN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB5ctVNUr+07r+8Vg6E1L4ZGS9h0SSMiBs9Wg9vxAM90AiEAmtqS4plOZqxIfvLBXxYagi/pF1mH3XvmZjojXvlyOvY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.1_1541703827217_0.37579518929040967"},"_hasShrinkwrap":false},"3.5.0-alpha.eddde304":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.eddde304","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.eddde304","@crave/farmblocks-hoc-input":"^5.1.0-alpha.eddde304","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.eddde304","@crave/farmblocks-theme":"^1.7.0-alpha.eddde304","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.eddde304","dist":{"shasum":"12eb9bc6a9565be899cddb94d3b988d946ac3ba2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.eddde304.tgz","integrity":"sha512-ItyTTj3/mYCJRKffiphspE/eLK/+lAVn+wIcV4tTXn9dZvs1ZHz2chnTUa2Z9rhbVOpnqk87i9ZNql847a4VNg==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5IrgCRA9TVsSAnZWagAAsKcP/134BgCouAkkTYSxVogK\nCrpQTgAHWrNMzBEmO7i8DOZNuLkN9Rxr56u5muDCdlVVD+qK3Pcj0A6dkY7K\n11W6sWZ2vHe0QpVOnVvBXUu+eUdMv0dUlR4TVxQI99g4OYzWXaycHctbxafu\nMfJl8toMq5w6dsgVrhbFYi+eanONHWWeLIg3UC0WTMyG4cWwGqmqW8ezYWkJ\nRJ/BgX3LLu/Qm7NVBrxqR94dnEo+n0xeh629BMXM1ggodlFT0ubxVGVFg6up\ntDwM8jIlOfhNTObg1hqKzFG9DIBSNtSAEplMmWy3OemLSyH37yPvV5T0LXAV\nI9cEyVG3LJmUxjBLTmxKuIfBCXdbx4KqWDERB5HdVBiQ6VOJH/ep8ETk++mT\nSpr8b0qo9lWr90vFqV2nuJ1zJ8qc6hu42HjU8iXULczl3O+KeX2pkPar4f3P\nziKMCm4heoKPIdHEivhZfhtcYlNyqm5JD2LxlTV8ZdVEEG9oCe6jMichVkaj\nLDh8xH7ryRTl92006Af4u0AzpcQzdVR+rC4E29gcjToAklnE72QXieXt2m6/\neJiiHLOvzJffOVkAlDRE5ib43cJSyvA7lz+FnC3Xe10BOhB1o2qgqHOiCPSp\nhwiYeJTi75N5btoBTzMB4Tl+GHecJ9lAP1R5cWaV4T+kwSos6bE1FBiJA4vl\njdTt\r\n=nHjM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIArLhhnqd+HodrH5C/ry9TIH7s+XRjwAy2gtPgh5SK1VAiEAzvlRXzLDeFG7JTyvNmf0ZMam7Fx5I1UZalEs8uqSVQI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.eddde304_1541704415565_0.19165773636056294"},"_hasShrinkwrap":false},"3.5.0-alpha.9bff8ddb":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.9bff8ddb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.9bff8ddb","@crave/farmblocks-hoc-input":"^5.1.0-alpha.9bff8ddb","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.9bff8ddb","@crave/farmblocks-theme":"^1.7.0-alpha.9bff8ddb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.9bff8ddb","dist":{"shasum":"e07586f5366e4448968fe0bb5df788e73be43460","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.9bff8ddb.tgz","integrity":"sha512-eI5eI/s6sFZF4b1JczVVj9HLvQZthG4QVtEX8MsINxc3eZ04no60j1xGwTYW2qO0ar0XVZ87VADT0bz0s4zkzA==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5ZzTCRA9TVsSAnZWagAAzioP/RxYjamh9eTRRl/fu6Qo\n7NuX7S1o0Ase+UPk81ae6l27cAtvFp5pujOwVDR0hRKi7+z8iu58UlQiDfyN\nlNxfBzi+qKfJqAi22ysWDyWsEjqc9C37LBE9ufUiAsAOQ1txz2uyMqQ9zp5M\n3OQLGj+Y8tfxGVgIPdIzl3hWchndPkF1dt1w883V7REXNndp/VGr1P2otMUP\nJvKUs+fX7MTo+rOSe5yLjl3UCf/rHUV+EJBzh3tGecSVCf5MyIi3iL/Ke5vx\nexhdpxYuFnAvu5+aE68jk8g80mGnkjFYdvGezkDX+DUdIY2OX0PHRPlhGLMQ\nUAdrHlnETvpKK10L9xG2HR7q2oweARqnZINzSmqN8ZzehPSbzzKHVY9ORokl\nJ8VWTEpjBLtxlqVOrhm3sb6GqL7Fc8EhqjQ1AVVqYKT7BjX06VvNxB3Gj+7x\njR1PbbnC9vyicV+PdTL/D6+btXyinonrBAlwi7mrSj9x9egnS4UV3wTKw/U7\nRYZSpD1LxFFKijKkqGpM3kJW6LVH4JQkDt8j4QuMnLbtz81aHkbQUlWputeP\nEfu8c2IPzRD0ocHJDGsIcMLIh8ZJg69pNnq0ob9UXcRtHxqeKJgXqBbQakNZ\nEQu5sASUbWxCnqkN14vAi0PJLVaFPrzcPo/Ke80rH4wAgEuL0DH7nmEZzTyU\nDzVa\r\n=c+ep\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQChbluuSUlqhepvMgdRHHgyEFk9THmJtNcswdhl9mkymAIgEHbcJFPmeKsedurS/vjPMoPVZ6p3DeI9qRSnfTcJ87I="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.9bff8ddb_1541774546416_0.37370458555909924"},"_hasShrinkwrap":false},"3.5.0-alpha.0251c33c":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.0251c33c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.0251c33c","@crave/farmblocks-hoc-input":"^5.1.0-alpha.0251c33c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.0251c33c","@crave/farmblocks-theme":"^1.7.0-alpha.0251c33c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.0251c33c","dist":{"shasum":"88c3aa4bee24c89389751ad9f861620d068c16e9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.0251c33c.tgz","integrity":"sha512-Dgd3c3REfE4SLKH8k5UVNOH3HDtSY+EY9OgVX+eVXwwpcHK93xQ/Yaras1+YMJG3JjYTJbixwuBM/41vHQ1FRg==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5i+WCRA9TVsSAnZWagAAwMkP/16wkZSyFExgCwZRxrwQ\nkXwhOH8iLcvdYCVieWeQ8tTuPTbJ3ggs+ACqhdTFzka9jY3RDmC0gvzGT19E\nN2GRz/RMAI+24WAxkwnoq7MLs9MJnTy1ia2K7Cn13trDb1eekMxmvXP4ZAQB\nSQzA/chMUt03miLwlx3FVZRT8gou54lRkwNP4svxBtAWz6rCvhLmItlIIPV4\nhh2mllX9c0u43RDGfLuLJkHRsElVEQVzsClB5YvZ+9oJSAlt9Qe5fEG/jlj5\n0w+euf8hr34quis92wDJlLuT+SQEaOzOSZ7GKVrLrBtOONdGNrHMMHJG/H+e\n/KdQFC7gWBH2ppaMb6Cgt7BoX7yOeHnTNjzzj2Mi9dnwEtqsPYby4nayHE4g\npJjtS7XiHoU6lwO3QYlF00gi0IGeyWc/t/tQEme7/GyCnBUDfujYvy6qiLAu\nRzxdXJP3cCSoWnXp7KSUpwTnmeqbZjrUi4r5PQlqllMzt8+eUDzxZkInpCzD\nknk9iBjCZMUKqLFE7apOZbz9HDMqXAQ73OAnA8F6cSaFe4ERVYDHNnvoSgfd\nRAuRNx8mxNY86sH3APnWy7gzM0+lVdTXjYeJCVletFOgLjXC1mHmXwOsP4aX\n5JGE6JcFJhcstgUlvlNWCRayWLuhBuqsfhBkidX4dkoROqkyYsYqfKLsGiY6\npfKk\r\n=f9EV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFEYwZzr3CCfxhsHkldpNeC2ZboBqexoZXRD+f3gSaFfAiEA/o0ke6Nr03CTMsNmYNRP9Ga67HXSLX1GH6a9a0okib4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.0251c33c_1541812118096_0.7062228909067627"},"_hasShrinkwrap":false},"3.5.0-alpha.e1d3d9bd":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.e1d3d9bd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.e1d3d9bd","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e1d3d9bd","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e1d3d9bd","@crave/farmblocks-theme":"^1.7.0-alpha.e1d3d9bd","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.e1d3d9bd","dist":{"shasum":"450b4375ba1a5af34cc70a9934a6ee3d2086978e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.e1d3d9bd.tgz","integrity":"sha512-JG06ZHJRhccaHJU71YoHBWXLp9dBf36UicLtvWkcLoQJnOsmf9HCnAtzuKUS7RJcDw0rR37u/zEMkbb+PufKfw==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5sXfCRA9TVsSAnZWagAADfEP/20Hh96y0bPcutgMP3Ol\nPbqfcxrT0pxgn2c2VOB1LgP/uBiz3Alut3wazS3mqNKjN5vz17QQ2jpy/zvw\ntuMdieb7Iym9+b6g3sKGf2FGI3VCdPqH9OVAa/qAQIl2Xp48zM3zDP0uBETc\nJyn92N6O0v2haKJhLKIPS0S01CLuurJTX+ad3JGMJI0aZOYY0EKywU4u/joX\naP38gUv6+DxdsQtBd2XUcvLnksS/buGsFjSHomUbYWR3+N5oPkVtMbTlOkcv\nr74mjLJM7VycmpjaVLVW6BQF/JbRwT/Rp1BonOVzFigpCUhPgSaV/cGtcFri\nl7Fxdg6Tg7sTrG8+naSlCFTsF/rAcAxqgNqUnCntuQXPbEIFiLMWYTf/ph7e\nuGz+MLNxsIqVNLTpUBrk1HMt6TWCvjozmlfE4LHtDUfrKNVBJlG0pEjPYjp/\nob53PfKxWGpvOKJwA/Tj6EpMRYiVaCEAeKEBjoM4fB/c6W1DaQaGLHQ0YJMu\npIMnAPzJKB0R+OIVBTrZq83e2973FCl2OShw33VB2k3Vbqnpbau4u9u/FZgz\nX0Cew+rMlUTsT6jamlc4/aJLnDFpjp246AoVECp28izfxwBLpgodqAkwLaYq\n7PzHIBveZ3R8vdFYbs7t5eyenE8hBnIupgQd635dB0i1uU7RLeI5SsuZlDi6\nobLW\r\n=xKGo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBNcDDQ4w8+/ztgOn3pogN3ARzwSbi1CrAqEn7KsvTImAiBbABfncxKFdoUc0UUrgiat/zLVsy4fvdyKCr6dtL6IEw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.e1d3d9bd_1541850590379_0.5088987204930389"},"_hasShrinkwrap":false},"3.5.0-alpha.43e2e3a4":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.43e2e3a4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.43e2e3a4","@crave/farmblocks-hoc-input":"^5.1.0-alpha.43e2e3a4","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.43e2e3a4","@crave/farmblocks-theme":"^1.7.0-alpha.43e2e3a4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.43e2e3a4","dist":{"shasum":"8da4e80c5ec20e4873576f5e8a53d3ae2c265111","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.43e2e3a4.tgz","integrity":"sha512-U/OZB0V70UITTzfua+oH1IQ0CQQPgLaZUo9C33CMTZVeWYpof/3XA2Sl4rP3KHwODB1WkUXBW7i0uqEqHURLwg==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5xeHCRA9TVsSAnZWagAArfkP/RzFej0D9595m/bI51ml\nXj8t3d5uI+nzp2emp3axUtM7aQ6SIC0HlDgztPTtX/Hd8Swy8P5XbSrabiR7\nqwWShn/LEzOBBjM2zvOPFv7kmi7uxKfDnxc1DkofXgQsc1yZkyuv0CGCx8OB\njesZhWDn3b6J392CuAECkgJdCfSmbgB6zAG4gK1tDm6XUw25Zih3yupWjp2F\nXUyLmt/1Bx5H76/D/bXGpocVvFu0Xh5naGvZFHpe3qzbYiXgfz3UTapNgJyR\nL8JKpMRziwcIzSNIZ66/D5Xmse7meIiVqnzdJlW1OSRaxAinBJOLUrWhM8Q7\nXMUFcbAvSCcSFdg8M9nqSaimzdIcOajz/vgC5yPOZoWNAfdq5HtDtjD2iaox\nZFKiR6+eRrsn1GdYKVTdD0qA3nrGUeAcvTOLjJ+mFOux/P3KerWteyEx+wuF\nO0G2A52MQen+qTYbOYB5MPx/1IsPP/K6IvNHg+VJih9aHDAgWVJVSHvcx6+l\ndresDvfm6nVJegs+37mQdTCYbzavORFz+kU80cWmphCEOIy7rlJy9A3RqtD7\ng5/UKoyAa229H9Scn++ZHyc8fahfEjDnYS9/FEFRauXcXkM4YNv5eT1yUYJw\n37R28968kpulLgTjh/flzLebO0u/kCNvN/BUdB5PRS5F7a99IhZSTLuOh9mj\nTZ/Q\r\n=cpmP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCx1bWdk66kteIJJv64Dp948IhUQSbqDxTGBbQRK3xf9QIgUa6vRt6rIKL7kMguhe7C5WZZhtN4SQzED+dbHlT1/Jg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.43e2e3a4_1541871495325_0.28614994014114803"},"_hasShrinkwrap":false},"3.5.0-alpha.6ae5d07a":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.6ae5d07a","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.6ae5d07a","@crave/farmblocks-hoc-input":"^5.1.0-alpha.6ae5d07a","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.6ae5d07a","@crave/farmblocks-theme":"^1.7.0-alpha.6ae5d07a","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.6ae5d07a","dist":{"shasum":"57a2bfb53c5d3e93ddd860077d3bca743e5e7348","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.6ae5d07a.tgz","integrity":"sha512-F2WV63F2v4AkCDfbKIyJZ4xPgMM67/rA6xdPZ7TUQ9300Y0+aP0prMNJjgopSi6UxEEgtRailNP4caeb7S/3IA==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb51joCRA9TVsSAnZWagAAChYP/i9MwTo+R2tsPS1ATzhC\nDN6hme5q0/DrdBAc9aPbq6pHolBZ3uqagCbUJI9KYDzngZ2Z7h7wYiVg8ALW\nA+WsrkDoAtYCSBPVLreIgFkj5xtOJM8pEyv9rUOR/v7u2WjVg7sRhmdD9RD8\nwt4ctmXthZysq8u2v0PJ+g9XO+6QzwRNtW4lYI0yl4pXhwVfTfXaQ9sUnvLN\nQL9RRy14ZCqGY31t0xYQmszOCDVJwJWwSCnMTZSzVYLTDLXgZMPPhExXBha7\nCE9kDGEUNrFZZQTPxPlgQglz+xhuGVfJH+BRX41h7RDjFstQ8i+YUhDmXzTA\nvwh/Qku20yURKquEgWpcMNtiXu6D/fsa38HGESuZ+jWDi+XmunnXOcq0Hw80\niT/dxpCgEs3WGz9db7vwLeWTwXColcRjt/veDegigJjr6GzUfrJIDz7+/xTM\nG3vHPoRTE6OgOnChfmq4ROU3d07FKyPwVFnqJFw0K3eH2AobbMdoPp/y5HyU\nDWGu+h+ym0+A865qaGqpNYnRHYmKXG3UoE+b8gGNipRnMXVmsZ6i/myyiL2t\nEdwLWQeBkfyRH6YZlBrEK2uxfC2rPrgxeS9Hcg/jZkQc4dlPYK6qGu/KAKTC\na4wMMYCs+vfPt2wF7Gq4rQ8TY1DRPMjb5lIq4d8AVwL7mFfoLDNVf6WIUPyv\nWEF1\r\n=TZJx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7bsTlg1XeERaiaM5feIDfdEAeu+yPc7AMDwysMh+4YgIgC9FYLfB9Bgmk1MwP3dq0e91vhv4KBg/uSHE48qwdcpk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.6ae5d07a_1541888231474_0.48343566030959906"},"_hasShrinkwrap":false},"3.5.0-alpha.e7c81443":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.e7c81443","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.e7c81443","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e7c81443","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e7c81443","@crave/farmblocks-theme":"^1.7.0-alpha.e7c81443","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.e7c81443","dist":{"shasum":"8f8f4a216c59a71fcc79428ef4a393f4013fca8b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.e7c81443.tgz","integrity":"sha512-qKG5309ddazEF/GwqGQxFnxsEqPZUTDtDt9OMZD2BberqXm8mBUJCzN7A9N8y4Lko6LrCmLGmFjwKFrI5jVHkw==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb5+9gCRA9TVsSAnZWagAAL4wQAJ6VJpcFj8+TXc+zcUFV\nYMk3xbYQ037NgJRJ2IWZJpE8LjQupUNydiGo1qRmy8LW8Su1nlZWraHt9QVQ\neB24gM1NQZe98X7W0/g1Mu+9KmqMpVvValFUqQtQgcy5TtKkdKUbp7Yg42fU\nxlK39tjlc2RK72ZVs3R1mh1JaMJx5j+zkSjnQoa9nemBLcDghOvkFhxK8P0Z\nm10s8svqehZeQPSe/n7xtdle3Hg9iMoQYo1UCV7TuRhxWlxZCRBJ167P8q6d\nV5ua9m0DbQD7p0i/Dsn8Ekyx2iGVYuu612yfHoMSt5jMs0dqMWeLT279W3he\n7rsxdAQBeSFIwd19AYZtwvyQOwNQZLc1DXGR01zwxn1rsaF6wNw923t7i2+p\nmT/RuDilPkcDvd9PVgKuzO2vdn4+wOk8at46CCqaTkpWdo9TVVo9fRv9LcfV\ne2cLQOYiLjBZOu/BAk0v6wyGF2wsKIu+i/vZF03oaKrUJr6v8IYEwrVRnJUQ\na3wZQmxcKWEmJZpL4nWYxYV2mes/tafPH3UFhNS7VYvaHo2XeaNw2irusVZo\nT5VAPACcYEQTnF8ayD3spdltCNIQTkv/arjW98HAyefol0NmILNG/tbElfH+\nja6ExsQON9A2bZhISQz6pT7JHwhJi3VkLZ2Da6RIPP6vQ7oSlZhVfxDnA7gw\n+cSd\r\n=iuP4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFiGiBfmdNMrPVPsHOyGGZ+PJYf/LKjP1CgSdYVsB0m0AiEA7cvW6CtdATeMvXZqxc2qMfcVWbFROFcaNQpVwdj1PUA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.e7c81443_1541926751635_0.277995814459538"},"_hasShrinkwrap":false},"3.5.0-alpha.3bc2b88c":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.3bc2b88c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.3bc2b88c","@crave/farmblocks-hoc-input":"^5.1.0-alpha.3bc2b88c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.3bc2b88c","@crave/farmblocks-theme":"^1.7.0-alpha.3bc2b88c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.3bc2b88c","dist":{"shasum":"18fe78221514e0008cc6015829f1c17fb975956a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.3bc2b88c.tgz","integrity":"sha512-bxbrTIM75lSuJB4Nh18VmL91E9eLzwLxLoX4Sd8ScNFcfjLp3yrFvtQQoM6V5AL/oqiiVQzw4NHrIZ2IaZoSYA==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb6BGnCRA9TVsSAnZWagAA9twP/1pi88fVN3A0T8Bv3/CV\nyrQACDaKIXTg+uPyCMg7dZ+3xyOBtgZZ5rUjVSmJkxB8DDMbwjC+DbVMkrXj\nhTiA0t8sFrr6E3PuWfLrc9evj3OvqsKt8x8goQBBpZIXPqtfCQWB3taJFCQY\nKwFFEUr6ekU75Pj2w1FpJWT+/KrB9lTI3HTr7NMqIzvQaH6pw2Ljdj5ah9LJ\nzqO08gcRE4J+SPowodPrp54r2xn3CLETQD9l8uadNBWOMPg2UzraXqiTAtzh\nhFWSKcnkBEIU7y3pe02KM95RjDYQsS9VVl3OnkXMFLI1ttRIZdDhWgk8lcTq\nr6x7caE8ZWCj4gvxZN/JsIxVWzEe9zMrssZTBgcZUdMHb/udLRlCRTXtE6GH\nUMiFP0evAi/3BqnMED70bLTe/1MJzg89GXbGP68dNaFS7rWuy/8C8JHXthix\njzZ6URwPN4wl1v7xO7t03LCEB6Mg0p2YLYlMlPGWKtGxripxp3RnG8HAMjc0\nNprn51WGc2jNENZJnZmuFUpEFU6uPvR+s+xpwZUyJ3U7HQWJ00XNgBHs4skq\nciVZXFEcgWP/XWxhX0j4FKH/68mwqKvzIyd9dZHCvtKGR0u2YiVu5P7LG3YD\nBB6OFJ4ycprcNF14cokLSXIYbvBx6CBrljz3Mx2o+2B4yhcmSWG2KRa/lCQP\nfDaa\r\n=oQMl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGxX4Hg4lnKyMuCLcW+5TNuRPUmzN8P9laD9safk7iC/AiEA8RVEwKqe/m6xGvIZdyWKuOlB6YP3ovR3ykjndpPWKDc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.3bc2b88c_1541935526602_0.41888087809607377"},"_hasShrinkwrap":false},"3.5.0-alpha.aa3b4b88":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.aa3b4b88","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.aa3b4b88","@crave/farmblocks-hoc-input":"^5.1.0-alpha.aa3b4b88","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.aa3b4b88","@crave/farmblocks-theme":"^1.7.0-alpha.aa3b4b88","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.aa3b4b88","dist":{"shasum":"665c48b8e1adbbd0a411be80d157ce23cac48770","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.aa3b4b88.tgz","integrity":"sha512-civDqxyxZps+pIzbID175hnJ2Kv+knmNjHu5v+GPAzTM58VNvd+7OBKZQWCWbP3i5Xm/BMoKR2kQ7ASu7VvncA==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb6bu5CRA9TVsSAnZWagAA154P/A7gxVLqhtUj6dtQ913w\nSKTdI0quwTkRlikih/y+pNPVoMQLsZGLPuEOwWKqXQiNfOK3qGQ30vdw1GVQ\nnW0dTW1Nc39cGl00kg7lLW3Zcr8DVpSMt5NeE5HGN+puINtCucJymoOzP7uu\neh8LQhr6zhzwgw9lnNrVo+eKun0zl4n27am8Hx2kUqTn1IrQyU4C6/nFGGae\ntLYoXtkrKKT3Oe5y4MMS08I201S5SZoV+5nwqJW9LHKB7p0J74aska8ZXOpY\n8/W8+aBwl4Cu09ogrRHxHG1petqBkQnlMja8FdFRrpKdQ6P7eY3CHokkub9a\nntmuD9JZH9EsfBcISNXysjvyDTluNygeA5DPzB/bOUNP8X5X2+Vrr5VKpJ+h\n9+DEUMZozV4poAxKUtnUMymb7I1nGhoBtNQsB4UMK1riQVDvSA96lg+W/IEe\nFnzLyeRMm5PsWOzSMPbAWXJBYszUPHPaa4me7556w965ZV6E1u9EugpKd4qq\nty2wYO1mQAsa/mNFFfeZ2Ov+YXzGFuhGBHBuGoLBEsxdosHWOfyr4ZufEXGk\nmtxNe21kQAjDtq8fwxylugWinhZZ/r60vMPBAgNeLKPXt8IZcaxTkiVAI+lU\n/nVXT4pGmdWMZbKHb2DAqWEKe1uGb1b6FNwE9zj6PkjrPz6ezZrSgu3iqovS\nn0cY\r\n=HDcK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxs2/PZ7OwnDD6Xu5WvjNIRZx/ykQGFIWpbhvnbn0fdQIgCcZ8jSfGthAVxzoAiHcgMJ4D0fxEYkBTp2sqAD+35dc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.aa3b4b88_1542044600702_0.07415420643101167"},"_hasShrinkwrap":false},"3.5.0-alpha.83b4399c":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.83b4399c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.83b4399c","@crave/farmblocks-hoc-input":"^5.1.0-alpha.83b4399c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.83b4399c","@crave/farmblocks-theme":"^1.7.0-alpha.83b4399c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.83b4399c","dist":{"shasum":"cff4111aea58c19b3c82eb12129e27d7ce504718","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.83b4399c.tgz","integrity":"sha512-YQWpSy6b0QkpmLXwhB8x1mLdAKhSrGMAEvN8RNqET+aPYDUHuvvzUCa62EytWUmUjhhSy21RImrPxDl+MhmXhw==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb6g9nCRA9TVsSAnZWagAAX/cP/0KqFm9HVT0EBdc7AqzW\nRXagbNf/B33U5mJx1JFhn1ZqV42EQrRMwEwetMAkoiLloPwNAc79UpQ5okpf\nP/2Pl0r48OBT0eqyqQ5lf0P2v8QPIY4aZo792EVdKaxpCWz5MwLT1+qcN1Pd\nw8BCgMpGQz57gO4IvBk12HCurCZYVW/FIABBuGKm3DMtB3URfvkW2/E1frqN\n/s7VBhpEL9/AVR2OMxWooc5sUYjl81zZEhYFjr6C4f6jL6ASYezwjKrEi0JM\nKkk5tIAw85AbPwbZaV3uF7tBuTEyGt0IMDBHPWW1yDNJMEDs2GV0rMZt/4H8\nMcKTeI1lEsCGFnZuf9UwTK8HoQY0xcN0INy5eSf2r5NFvTKSyVRcrl4ScjnY\n4w5OlH66InPvoNPYtAF8Cj4XnSkGh9Fo9HUQHqlbbiTmJ6EMgu8QVLl/cILZ\nMxJhO+cpeTaLINQWu3DaipohU7bmVd9XRZmkCIQQ7Ud3YnktAyBkjh53n3Pp\ncj875BiAL04917fcMLWTWi+2Xt6YLriysANNVknYEbc26YcJWr0Q7YFyqlot\nk4Jfq+oNtoM40o3l7I3t8B3MBv/v0T/7Ut/qinFw1qunLwGNVOtuzHVlsEhv\nwQtxzzOf7iJ0/SFdS8qQPHElHiacHQW19pNC5GrQBZvlnf6txXi/BlnDNIa7\nIDgC\r\n=YgGd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGTj8P+AENewK41EBfm6auX8+4YzhFQtpBd0ArNvHCMQIgAldNrBbVbpLHICzdKlGjZjRvjxR1vDKXt9piDZTMzDE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.83b4399c_1542066022398_0.2849961279351141"},"_hasShrinkwrap":false},"3.5.0-alpha.fadcd199":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.fadcd199","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.fadcd199","@crave/farmblocks-hoc-input":"^5.1.0-alpha.fadcd199","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.fadcd199","@crave/farmblocks-theme":"^1.7.0-alpha.fadcd199","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.fadcd199","dist":{"shasum":"b7947fabcda883076b4c3accabe7b168e9d78d87","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.fadcd199.tgz","integrity":"sha512-2olSeQFltOjUKZMbTrmlkmxtKKDkEws1HtK05gIjTDWGterMxrfhAHizryRoCoRbkugHlg4wzBSyBbvjr3goTQ==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb6mDFCRA9TVsSAnZWagAAnp4P/2DujARctCkuOwPVAGjh\n8WsB7BjNNcyihewu/P2meuKJmOK2lcPhGkHevN0dPPDQAi6e9n1q414Gf+sv\nDV0K9fN7TqnWNxX2+uRdsUSPslyB0sFjO/Zn2mpl0hL8H1+t9dwO0g+YZand\nkiXHbOOzvCrc5LglT6KftgSL1fUkCZqdXxLPBIcyEb14Kn03gAGn27r3rM8X\n3Yt/HXHQJWONPtqGXgMs6obUNvSDMLBEbGJjIVUYo7GEv1BIeI5q35V0yJr9\nwojJe8TPHpWXgWsI6gSiWFXmThuxugJnD8hiGIl70cA4GbDugbDN4Mmhn4gM\nchJaR9SakIERzJ0/JF8K9qIyFDZ/Dc7sw8vHjBU9H6kbCT07txS3rWFlRzzK\nW0bkaEV8+me1bCcZRtuqto/vxIYkAhFBAwxWi0qDcHHDNa5bYxaBxG5NEvHR\nhcSjMLqR+lnAC3jyvx3Z0LqmhHZuhxKT0dGvPGdlKYme3ES7VkZ4ocDeN1AD\nkyaI+xvQv/r6T1RU9gK+xHlHxLT8sa3xP2C/azpRzjkID/IxBo7X7K30P0PG\nO8m7uFm2KEJBoMG4JfJCOcpAWjZHjjxoGKLN45tZufDVOhxldebp1Owa6v7O\nMkmX/80Ysx4mUTXRF5ums5PCgzqmps1imeJX6cPWGDNNm4RxPN/R9S4yJPzQ\nZ44j\r\n=RTwd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDCuKEjaqEnMA54tOexOxLzyN0ltOIfz7QNzMeXhrYFgIhAIb24LZq97+EC0BvXnOJFxlkhUeYZ0bDKMcXDyPZS5mT"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.fadcd199_1542086852531_0.027150586574704372"},"_hasShrinkwrap":false},"3.5.0-alpha.6bf4f5bb":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.6bf4f5bb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.6bf4f5bb","@crave/farmblocks-hoc-input":"^5.1.0-alpha.6bf4f5bb","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.6bf4f5bb","@crave/farmblocks-theme":"^1.7.0-alpha.6bf4f5bb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.6bf4f5bb","dist":{"shasum":"876bb2b92ec2fc7b65ba92dff86c7c71deefbb9a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.6bf4f5bb.tgz","integrity":"sha512-FNnu2drIFT4ktgPJPtxZ5CkIRdYeHYhUaiDjM9DXgFfL/ZvQh28C/eK815pU/8yqVDmzLeHgMNJzq4IjMcH8AA==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb7x19CRA9TVsSAnZWagAAtIQP/2g/d3hHgQj8pi3kAPE3\nYulWT7QkbnAfelMFJ/94qbih2esad6ADsNUIMWtjMVfHH/AqhTVvblSBCkJR\nwguQG+8kHSUlwPJU96NZmaCWAxh8VRk+1wuAeuj7j3iPBF5/Tz0w2NQ4yx1g\nFXtjFR/Tr3BYm7NADLy+c9eS2sLqlDRoIoegGjkDSl5hTsGL26mW1P85T490\nDX+ZhwHx6zDrfGZcT9YW8ZMedowB4lmrY1ySQcTn+Ox14sRSHaWmmWvqyBRP\n6TS2XM500fCJPBVpHxnwNcoFpROaLp6V+fmOSFpRk2ig+Pmg+nKavHvzY33d\nuMw2PF9qCOLzfFtp+UxPRY0q8Ak1sV4Xiz3uWEcySAcmff/HN+FjD3U0KXWr\n9uOO7It7147NsVUKW1IcDGpCXuApF3ancxyLOFFrzTnaLt1z0qnN1qT/rbzT\nbkDQZLQFuP5Q6FTv2AaHKfSvY5TKODvOBWT7nXioyBcxi9fdyo/JNG6gaj74\nDxHWERoUkEfKGbF1rQpMLe7eSnjyusvWeFpNsVbBjkpi2uBp1zN/y6XSbBxR\n/99g4NlGCvgr7R3zs4c5wlTNfnXenw4IAfNYvHVs7sZ/2N1NbvHPw4Q83ZbM\nUG5zN25XKqZhhpEv4sJjoxD6vS5k5QjSb1GIHn/6rppMIRPVcgBkyPMtJEYV\nTzJ2\r\n=jUkf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCvG6y2FiAflLdf3mN7x5ZmncMYhEm1yCGxa6S51of7GwIhAPEMEFvq4IE5vJCKmUxP7pHqkwOckiiuFEzeshc+ar3G"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.6bf4f5bb_1542397309091_0.20371959712989374"},"_hasShrinkwrap":false},"3.5.0-alpha.375d8a6c":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.375d8a6c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.375d8a6c","@crave/farmblocks-hoc-input":"^5.1.0-alpha.375d8a6c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.375d8a6c","@crave/farmblocks-theme":"^1.7.0-alpha.375d8a6c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.375d8a6c","dist":{"shasum":"9761ccbe77636ab1d39108aa97961c9cd8ee0f0c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.375d8a6c.tgz","integrity":"sha512-UhFxBxz4NnMr7QhjjPUHkZ+pdwaoOqOGSTfNQOgR3/fwKYmIbuHU7mnnj+6U1dOC6p3Cx+35GbiJc5jVXlKEig==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8QQDCRA9TVsSAnZWagAA4twP/0Vlb9GnD19YzAPloqXZ\nQuxA2D7SwRvtTokHqw3HhaubjtoD+dMNKe4rzziNHBVSNWMWnAg3ytem5P3L\nKzwWfJ4ztzRAT/ci/HvY++yiyMGUSrN/3YD4O3/NmXX0Y97cXByBskp9iwSt\n8WR52iJkqk0mZ1dLxk8oxNN5pM53ffW4xn7zvpSJNpn8m8J+EMBmUpOdfJGs\n0ODRT9cWHVsxp/oXvz1FDxCFQHgwOX0BsNbjFDTl/PWy3XQfJEYQTFqNOvnF\n0zSN1Rm2yHkponmeO4dHkubUKHE7dj8Gs0xYTD+xRKhpX6+n2xFTlODk2/RK\nRuI7zTfboO+i71QxJXkDHANraxPRbOErEFsM5VLfM+YZnkGsgNUqY5DDColn\nJ0NhL/g1z5EBdBRCQq7uAkh7eRecO7W9MZzSN8o2pI+mO9nFfRa0hZVYYxzJ\nYrF+cExLNRhTF9+kxm37J79O3HTaf76cevpUUYuTzsF6YfNBbs9x9uKcOucO\nTVedbiagA+DFiJItagz2wT6c1gcSe4ZRGuuQMHYWODNfDaKGhZFq3BFtZ+G0\nzVAdFCGBoIzvWC+5QfNe5YfIob4RlVU6754vuuLzfJnApfmAdrJufwx6ANAp\nPDOOA3xta5IEGJcpaUe5KMJ/2FiHIGSU3LkvuG8JbRWfph4KBqwc9r9j7szq\ncs9o\r\n=ZIZ3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCV06Sq2KwW89llbOO23yWlqhZx1cz43iyXBIfH5+UfgwIgUa6eAX9hB3vUW9NMclmU2r7P8BPqAIpJgv5eN6qzUt4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.375d8a6c_1542521858931_0.6867013197949439"},"_hasShrinkwrap":false},"3.5.0-alpha.e54fc096":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.e54fc096","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.e54fc096","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e54fc096","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e54fc096","@crave/farmblocks-theme":"^1.7.0-alpha.e54fc096","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.e54fc096","dist":{"shasum":"73248f7dba6a7d90a28a357d80436534745fbd5f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.e54fc096.tgz","integrity":"sha512-pUaQxjRwxZnnnc1PVKhA6u2s1xgsyVMhzRktV0CQxLVP992j7NsOr49MQR0pUhV9KSX20rCiQlIotFOumLp8zg==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8vMpCRA9TVsSAnZWagAAfj4P/0X1JLIe0l/eMTH5ADpm\n0EfXUdSsrGUKn3toQIh3Hpd6/54KATKN5ylTDQyXJ4dPyGQtwMq8QgXEyxdv\ng6cfPDrNVKch8G6tfaRnM3i+9Vec7KsJHX/Po1KqZf5+qUG/8oT0b0eKiYpX\nyO5DibIjDFbMUVv78J4YYVlfgDnEpc7baqp4Cn9A2j1pLRWoiTOarbCCB7OB\nDvXO+GozVcRe8t+xG6Gh3lxWJbe2aGdJOlhg1pr9R4+dyYRb5J3fJPeAnYDM\n925UF++Ye21YvD3qPtxfHYfO4N046g/KhTEXy15ljC0a+VBCy5fOon+gD01n\nPBs1PZnpJfGkE7x8hj2SlZBpSgaCk0DVrstWiMgaTY5YO/Xbjaf+85/6Aeoa\n9/F9HJspo9TBLSP6luZuhkFGGQYPzV7runB5wsPCq/T/Z873w0+eiVZdbfk2\npwo5cKChM6XPuIDGL7EPG6h9d5Xjo0j+/7Cow56p99TwhSsGJXbvsCtgWygD\n3PZnKHtbgop9p2CR5d2PilES+Ft7SxkLkH7pUQObzrRPcXRsbXM9FwlL2L2I\n9NyI7yJsQIFnU0Y7wTCOD+lwzUJryUjRpWB8tW1wKR0/BVS3yW+GRsqnufn5\nSlB8L1J/q9Q6bw0xpH2iMpops9QuyoMfZnq8xTC+RSjIzw1vMAPB63FqxP9L\nEsmZ\r\n=2x20\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCXYOZMX0cLxU4IgNvqizNrbWw4AxHZE+2iOt8SuWAWBAIhAKjWp+3UqJp99QvavLw8HbsNQ/A7iOxhNLY3nkyI07to"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.e54fc096_1542648616848_0.58970248615473"},"_hasShrinkwrap":false},"3.5.0-alpha.f6da0219":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.f6da0219","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.2.0","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.f6da0219","@crave/farmblocks-hoc-input":"^5.1.0-alpha.f6da0219","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.f6da0219","@crave/farmblocks-theme":"^1.7.0-alpha.f6da0219","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.f6da0219","dist":{"shasum":"7c99914cf67f2e17613abfe85004b11dd4ccf40c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.f6da0219.tgz","integrity":"sha512-6sAUsBA0ozOC4uN5v7GX7EVf4lvF4Vf15UCvRwP5hhC8b6SMTuUDmWumRE7m/RAdHcuMjCb+qNs6XoRoWZf3qQ==","fileCount":13,"unpackedSize":59084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb88/FCRA9TVsSAnZWagAACVAP/RXokPju6bbk3eHqpLo0\nEcaDZF2xLJ1uCU1X6Ih3m1ytTWFEvnARAtL15ifzZO1Hm02odvIMqsjtYfrU\nMe8mXA+dQJxtwyaTRvq6uafSQkKYp4B1PXNTl4DPsbKKUqGbRtGd2HhO7y2Y\nlBpyMZGLC+kfarHYiICWNNklhlNDie7R02ElEdzjbVNcPX6B/zgvge3tLa5C\nxwNDl46g/FK0fnWycwUaQc+sN6sgcc++E+ZWs9nXhC1UIoTMpdYuAjlRP56Z\nAPCX9JS2Uy2fHbYtPbvjAmXsNFIMfEPYlEWM2htDjKdn7Qq1QGjP5S+2Aqao\nnECwtJmsnG+uQs0fQga+Rd/W+LpTpZ7yDMH4EfkmPKEsL/ypbuNJxo0Kdaxo\nbJW+rBBE/R2A9V8uNg4IVzBZNq1Nhn+5QPzjXkM62gJRimmkLdr2keg9Udxr\nsXAlIlIzFs2rlbLkEU6coDuKNMKgj8NE7reffvWGXMRoYp7CDPJSGN+3NQQF\na2GohMi0ZqlUmGN8UhVikEzeL76rESneYxoiq/bthOR/nnJI4epm9HjTAJGT\nQ18CNioBsPyHVlZZHJszCe0wSz6Fzb0tXldvwzclxTWNKB2VnTBkDPYKKXeX\n7gYEQa1w2XEL+Bcig3q4GKv5q+BkrVsq/W9eXBFnZtOz5OmXLMBCxwbVku8x\nTLDr\r\n=N1zG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDeEGY+Yure+nlTOXeTnd0113gF/HYiEBH9vge2cK89+QIgbFD80QeBP8hVGxIAJAR4y8chZBY2KIR/Kj+bepBRMdc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.f6da0219_1542705093203_0.1733551774811679"},"_hasShrinkwrap":false},"3.4.2":{"name":"@crave/farmblocks-input-text","version":"3.4.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.1","@crave/farmblocks-hoc-input":"^5.0.3","@crave/farmblocks-hoc-validation-messages":"^2.0.1","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.2","dist":{"shasum":"77e74ad0c11d60a03d7d590bb9e317ba6dda443c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.2.tgz","integrity":"sha512-IBYSzASpgAn6QHRyaizBNpSsC4/KSiINc/xjBd4nOSNF0bil0cHmq8tM3RDrYM2/xgxwQdIt+np0fIk2miwPRQ==","fileCount":13,"unpackedSize":58965,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9UAdCRA9TVsSAnZWagAATT4QAIFv+/j0QjTx/8J7FW/3\nfmPdajfy8aY7/gYqGZqaUL72K6fJD2rTZsFg6lJBOebY4YUXc1SoWVs38cmP\nYqAi5sreUfALfkRYwOTKSbeyPJ7wQC6tawhMlaX/r6kcObu6cf5wV7y+eTa/\nY2sSjRRIkE0cOLqtzwOV+NwgnWDbBbYTM/kcGILybwBWe1T+y4s0qQLSbW6e\ndWIQ/i78vzywSbLxPdzbEmIVtDlrzPPPj1qua/HWiQhmtVXZH9H68zNGHM6D\nu5k9jICmHXAQRp5x5VrslCUgMMc2xOqA1hDBZElH7JeIkBld9fyK/WtG8mgI\nbQazF1MSl6STkjr4ME/wWjvp6r3Jmw5lkhHhNeEB9xyxxVSrW72Qr+Rzj4er\n5L5yzXqa5+Wk6e4X0FXkGwn7TDXNAiq9rBG+ukNUKufkKQuSOvrHzyU1xa7Z\n4Eh20PMQ+8dOkglJpdA6YKfHsWR/yEiAf+1FQmZR8cdqNsWnzVrbcfaEkw+i\niqPLs73ESyJvo3CSYutcb36CvqhdiAiaOS2js0iEzDjau6KO5vamExXZA+Bo\nZVmnh6I/r5s8ZeSGOxl/1ytHYsWR+YBU3ScwbedCX0N2EeWI250sLoZXtdtz\nxIHXH3oegQZf3AnWzKD18/VwKIHBNSg740Bvea3Wx6+AOl0FYPIW3B+eigzl\nc6F4\r\n=2zqb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDbx06tDkYFFrXO63lAE6/BDOWG88pyfrVVeRnmZXAlAIhANZVnqAsDWJtuN7S705noXtpXqLkJhBO9IWMHiThpXA3"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.2_1542799388936_0.9518084288671047"},"_hasShrinkwrap":false},"3.5.0-alpha.6d6d14f7":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.6d6d14f7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.6d6d14f7","@crave/farmblocks-hoc-input":"^5.1.0-alpha.6d6d14f7","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.6d6d14f7","@crave/farmblocks-theme":"^1.7.0-alpha.6d6d14f7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.6d6d14f7","dist":{"shasum":"80372254ae6db08175fa8c76e52a747c8d5269c9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.6d6d14f7.tgz","integrity":"sha512-KsVmzJCsnUwK+q9SnGSj3yJi+FxlQjGdCfj5mJuH/1nHBwJnzxhorJf6O4A1JXKFfNJUO2If7SLuh3qZXZDsrw==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9UHoCRA9TVsSAnZWagAAJAMP/3BETTazNWSMHkIIV3Sm\nbfZN7EdxqmOVf1wmTIBxvWPdhTo74+T6OBeymFcduSi4jAOqARFE1gpErpEf\nzS9tBh6+duga9DJR9LczWz8YjWnV64pGJ482Qx1PE5uwsncvEFHi4M/BwWqo\n8St1METlBAYvES6KARGdwLDo6AhOZW+/HBso17pObWQST8kSPNObAjxSvS6G\nSJImVHNGMkXj+AoN+8H++tqUaYPUQYVt+9Z81oQzqdAKR6OHzXm7vTDQ+iG6\nZT8NibnmDQyuYbJW0Clb/8DW3oZvsAdC6TkreVmygz9xgo+shsghWJThk7/u\nzeDjPZsPh86ZjMyogCZtPHMebt4s9gP9ONGiQWEUIFyZXubQHzB7XnspWoAC\npoqaZ2pBLaaZlxi2NMWvmimyAse23FL360X1y4nmZP91LeTFebxKVJzjy4BB\neTv8IrW7JK+RLC0Vcfw5Q7LDMCWIsdpGladEb2W07gD3xPcOsz5BDT8/4PmO\nI0WauGTgIWcEMxinrRIqIMgh2pLSL55SI07afnjwluegHP60NmET3Je0BWZ3\nI/rMO/s3MgCZcqQ1IhS6naeHO1WZRaIlGwi4pi109+72kj8sGZWcGLWPght3\np081hvr8iSh040V5N+d0mR/V7BwZQo/n+aiFBfZCL/PRF+2/Hfy4dI8bopSy\n3tYm\r\n=fVKh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCoG38xlplsUcaKF8CO710TqyD2jVjYJEl2z/mA0I1htQIhANemTRw98G31VwTAnXCPKPWurdIZDTBPknznBBlsVn+A"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.6d6d14f7_1542799847879_0.7413848888824133"},"_hasShrinkwrap":false},"3.5.0-alpha.6b2101dd":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.6b2101dd","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.6b2101dd","@crave/farmblocks-hoc-input":"^5.1.0-alpha.6b2101dd","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.6b2101dd","@crave/farmblocks-theme":"^1.7.0-alpha.6b2101dd","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.6b2101dd","dist":{"shasum":"d2833c54c83975b4d5bc4850f34e369ccf5a1022","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.6b2101dd.tgz","integrity":"sha512-03VKkJWnYnD+ND9UVpoT+ok/i5bmWjlFQ8Y9iSB07X1NWa9qdnK2udadWPwF07sq84JN0/g8dAeRpFOxsVuIvw==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9awVCRA9TVsSAnZWagAAZF4P/13pCYS8mmt7KacBIIyw\naA/LmYuwswcCFMHUjXiohB6GltyEaw3EmjJOnIN1Z6WBNLGNR7xAmhojhc/h\nrSVN+c4Z8nL5cSsO48R5OwrvOH4lMzoREE7eNdYnui+1cfaRWb5Pz8BOBHe5\nQAA7tAH79jdmgRdtnKK499CI/ylHbarYoCSh5LrmGwu1sJmJ+q0abQMP9qnP\n5wIJK8r8pkAS9MpJEG4QK6iWyhFTiMulwQIEByfvV7gnGvVoipWygx+Q6l6E\naY2Xt8QNc23u1+0+eLnX1qMClw+2g7pOzdGr6p10q+clORtwrtfk4pCExLcS\nP/38f6/VVTBKHXB9ErkDSO8JA5hZHIdDDiq55T0Ptd9sxRCTHSAPdcKBy2Jk\nBulPQt/qooU6acOVbfGMxFkGct9HUkPOECMK4UNzqBKHvpk5AALlUROObRZc\n6Z0EH+dbF/jByCKK5F+GJyMolzQFk52p0Exy2W7ysnBcXeABFx24jO6vjTOS\nnXStuiEC0F+bwVStUrDC7jdta6YlgO5Q/6B5nFVtRXPC+ZeJmz5pxWHZcTxU\nIZ2qDrDmM4v6lIs6oSoQ9DUp1jAAfpBvJQ39HTvVvsjY0tEj3moo7Srhroh4\nvr2BzLFybL4eTi0zpD+3q6JD1yh0oK/yUw3XauXP+Ipx1XX+FewOXh3uQGgH\nFYMc\r\n=yVdF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDBPnifZAoVrIxUw3Q8qfhZEeWnNxpbqZpS9dlTBGiJAAiEA6tZVfw9iVAvZtpVzvhKa3qI8yIeAYLRRyb1dvLc6tNA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.6b2101dd_1542827028650_0.4074589645469371"},"_hasShrinkwrap":false},"3.5.0-alpha.74cf6c51":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.74cf6c51","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.74cf6c51","@crave/farmblocks-hoc-input":"^5.1.0-alpha.74cf6c51","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.74cf6c51","@crave/farmblocks-theme":"^1.7.0-alpha.74cf6c51","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.74cf6c51","dist":{"shasum":"22af5bd7703aa9aeb9cac9ee6a7e0242139c22fa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.74cf6c51.tgz","integrity":"sha512-BLt4F7Vrdd3f1/V9D5qD8bjHUQ/GqRZ0wxZeLus5Em2iSrNbyYKCHyFo6gcVRefONrPwb1PB0lAV1zErgXRThQ==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9viWCRA9TVsSAnZWagAAtnwP/1XkU4wKsNWnCIkG5uU3\nJORZmKDAFT0HC/btsL0VEBwTi+BBHVyj+OFo3Pq9kAp+SqiuIttjVhHAJqC0\nYz3B6vqcEkD9VyMUigK3snY+EPHx+MI4xVabOpeJJX+A1GFT2hxg5lSArRiA\nlum7CqsUl9Mn6aBtcYRR+bn7sZKGP91BK09mvXzfaxqkLh2iY7h1nasjS2vM\nq87TKaWyjD7DK+4RuEEecE5BfUGtdl3O0+xS+HZ7+74vhGdTwfV3Kx7tgdRS\nfHr6+zYM8tGhbTht/uZIHJQGmGBq+ROaMYQHIrsQUuhUd3pUaGAC70yx4YI5\nRdJUJdIolUULqRNja7u/1bnekGZMeh+ndN44Eo8W7eHogGSEMNLL8TfYA8Gi\nggekOJfkJp0RjmU7XsIFEt3tVAbXP6RhfulDjmtTV+D2BXy7IjO8yshclG2U\ntfZHDXV1mGiHVSja+Un1EStukudoMhMw3m/xoSS45R0xeukY3AXZmXjbUsJk\n5LJdJmalO1myoE/cPvzA7PXz5vHYgwLwo7xYUIDsRQmn7J/rNpyuXHFrVFx0\nGfi1J9ir4EQgo9pfUEGr6eHisAAC8zKyuqvp1rNFv3PGzHRGkO6O6Jd5Nb0l\nEpq6m2rOvHNMIFv9e716EJWlRyCIyNdIGT2/ivT7qkYy/mSnReI6n2HJXjhr\nqAWc\r\n=Wzsu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWWn496bAMDDuH9k40oDpZ2crhXT9+6uhtiDbAQL2HywIgL88vgM+A7f6bXxWvYmLKepUJ8WIt6IAumm6ot73QRSk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.74cf6c51_1542912150252_0.9242619842580655"},"_hasShrinkwrap":false},"3.5.0-alpha.c6940d9e":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.c6940d9e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.c6940d9e","@crave/farmblocks-hoc-input":"^5.1.0-alpha.c6940d9e","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.c6940d9e","@crave/farmblocks-theme":"^1.7.0-alpha.c6940d9e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.c6940d9e","dist":{"shasum":"9e75fcbd87051bcbbb958c439ba989d8dd7ac18d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.c6940d9e.tgz","integrity":"sha512-V3KqgBDiipQovzvA4A5JVfp5WWkzFyjywaANsz89HyrP9si+U2awnj3pYzhbeenDDn6gTYmPo53jgmKkso2NFQ==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb+v3vCRA9TVsSAnZWagAAROkP/0omTp1xqnaOb7/43PUa\nUZ5tOz9baNC2Yor2+rLpwWFK2cAY+LBu+TfZYntswsqTobR7yshNWIHNWwDT\nofteU8i2O9UDJdbk1ylhDrSCpwcH9JOmmUAWT9lsUjGAcIhfpqwd2BYAlULx\nV0D5R2SSY+BB7XpH+Eowh9qC9+wTCg10fpbW+rH8t1P5uXg1GFURVqVhQyiz\n1viu6zRNGCHtJRlLmUPRd+tdumxIAgjdS6ekdKjBZB7zigMGPVVtsIzTXpYv\nRLSUTubOw6tCPuPy0Y9iu+8JkF5bsP4mVmTV+MypMiD/2is3kVqcjJJRs/si\ntQLIhpBwm2damuLoI7dRCZ53h4+X5z0D+o9gZXl2kWBLv3XyoCPiMWnm42cc\nSLwaTtibmGgku13agSRbTs2msDOZxv+QxnXs1EQehh8ScU16uy9PmpXMa93K\nIpp3jIbB0M9EyJr6ZvMnYZJ7UhAqJ9ZLieL2y7BMEXKNtLT1+BKmUYsjwqvv\n1DKzadAwJJRZMyIqJkoTrgnhQfLVUAYDqtEqYC7WPRjZmwhVdI+ie5i/zd4e\nsuW2Mq9Ubi8fX2PbZD7EZRVbfpWp+l3fbfYPYy8xC+10N6hj37qU/y1UIt5i\nKAMxRID7MAvyF8WNwS9b48dOxo4BzMs3OJVVAjHnCC7ZyDmAvoA7iZCNcIam\nz1AZ\r\n=kuyF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD32ojRN9WGTiNN9QW/pYb789ryr8NQlroZt/x/XwICtgIgWJcJK6yaQW4pB4fIEvU5/rEBYZ70zH3pj0B7aGT6sUM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.c6940d9e_1543175662620_0.16161049964504248"},"_hasShrinkwrap":false},"3.5.0-alpha.74f71aaa":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.74f71aaa","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.74f71aaa","@crave/farmblocks-hoc-input":"^5.1.0-alpha.74f71aaa","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.74f71aaa","@crave/farmblocks-theme":"^1.7.0-alpha.74f71aaa","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.74f71aaa","dist":{"shasum":"17aae8f0210ba13069faf2cb02b83c1503f8729c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.74f71aaa.tgz","integrity":"sha512-/Ob7JTyf5M+2IZX2DxXvyulSvdvbdIzv+eXfvsvMeuYiB8sJhgXRiiFXL6zF3wMxyyS2MHfMxtj9YfoXrItW4Q==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/UxRCRA9TVsSAnZWagAAPRsP/jRaplkImMhSeuI76+F2\nY2Zyfovh0oHFwBp0Hervv/lTWdecVU8rS1QdZklx+GNfA09JybvesCnNhH9X\nnKAjCvPxsHVpKG0asCIuWljEqWAfa0UBSRVt3lEZBayYg1FFoIlJcKLrX6ih\n8FQPdshQ0TjYcch4PwTADsk2Z5qWacMrZTIluVF4vyNZDBHcrge31PDXXyb9\nzRi1vGS866/fq3GAjB6JdXqvFPKfM70NK71i7dfjMoKjwb6ykHTs+Uhxz6jk\n7/YQ4HJuRiyeYKnz4J37/9EJ+9qRaZ/Ea0OzVxK8NEiNsgPjTBhW1FXwDQf3\nJ4IlIdMKkz+Y9oy1kN6u7+L8iJUx+eNTlLZzL+TGNK4F6yXeVZ+Iyj596WIO\ncnYmp5K1iyteENb7i82xWc35/LVV4dyyF+V0eMja6Y+M642Hr6myXpLplWSP\nXMDLxvvQJXDahY6XHvlAsjtxx4yeTx0+0uAE/kor35uUeG5qund2iCk7iC87\nxg3Toi1lBUlpiOQ955TMurn+N0SiCuyjve4UZECwiXPPuZj60iDEiFg3s3If\n8q18MxiSRxt2QstMSbch+A+8yXQFlj4wckGFae0w4Vg+BejVq/8p85Bi1QuF\ngfiObi6DlXUXn45T/wGMAE6Ihu5AfObgTimuzcDsHruv9xpI7r9B5Rxf+h8o\nkWep\r\n=dMfO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGgsttnhlXBybzIA0mfg7L2omSW4shSa89UAS8qGoT6vAiEA0HJccJnvHaQ3fEDCKnZc9S/ykEdwOOpXo1/UsiM6v6U="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.74f71aaa_1543326800342_0.9443041556290386"},"_hasShrinkwrap":false},"3.5.0-alpha.b2965f0b":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.b2965f0b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.b2965f0b","@crave/farmblocks-hoc-input":"^5.1.0-alpha.b2965f0b","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.b2965f0b","@crave/farmblocks-theme":"^1.7.0-alpha.b2965f0b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.b2965f0b","dist":{"shasum":"4068278cf2eaa5aac6efddc9a9dd3ed17d8066d8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.b2965f0b.tgz","integrity":"sha512-y4WjNGAK0Ja0rRNCrx8PKAXVK8ri7d/B+VhD4zTFH9RyvHGZ+KweMYM+eRpN64GOo1WXhjYzBbtmpGGhPPvy/A==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/Vh5CRA9TVsSAnZWagAARX0QAJMRNU2MCg4KDmbxtNtQ\n3fnj7YTyiu1Wpr7p31N58QFq/AxFox/IetGd9cU4IMQq7sxjyhT3SvNmd+KX\nCeU6DBJwCNguxBgM1tNdNiOYzii00GsZKP7UZhNPaRgrflzzRWL9XDJ/zLK5\nkZK+Uj9sQPdcsfDRAxoAT0mDmCJUo0ge6GcMi/n3+Tj+MpYcezj/7gUQ9iQM\npbPydNmdS1OTWnt7FCHLYoBcdPjB2n12qauTalgjyBxVY6/LXTptE5+q+F9C\n407boCViENZBuAyNv+hepgNkrY4OCsD4p2BmD/1QNt1Rdz317UDuKpI+LzJG\nqId5CuAj4Z9nlXuARRRyyOBxr8RYtg/S6U5MW5PzXyqfWyy3oqJE1qN0WOiE\nB9k0Z1M4ElCFF85lWOjRE9efqDU3wntQEUMKkq0og7KqTy2FXP/PckjMefq/\nFrl1VQ9vnAT/MHlnfmILtq9ztvvjqnSgab9NmKPg1gzSnQ/bdOHmeXlbnk/y\ntqoN+mQS32CnURdKu2Zeek/eiq9G2yGntLnSwdzHzFEvqTFoLyeZ9NLBO2K3\nKkzHyBN8njja5LIzaY5gtT20wMOeq3Revj3hRQhDHLC51zZ3LCZYwvb0Q8E6\n7EwK9WCffYOsguN0Es4pkLEQv0U09pzrnqIRYGzrktGUQGPjlkZelCmfe7ac\nqXd8\r\n=3Rjh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCokNpAuOH/bNlV8B3l932WmJMXJAdKnlMSYimkpOGN2gIgMsPMqWWN8xxfnURp0EHoQoByROBOAQXR+KZ8E1qIJYw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.b2965f0b_1543329913136_0.18183717090591034"},"_hasShrinkwrap":false},"3.5.0-alpha.cdd34101":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.cdd34101","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.cdd34101","@crave/farmblocks-hoc-input":"^5.1.0-alpha.cdd34101","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.cdd34101","@crave/farmblocks-theme":"^1.7.0-alpha.cdd34101","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.cdd34101","dist":{"shasum":"52b7ae6ca15414688409e222f0688818bbec6a58","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.cdd34101.tgz","integrity":"sha512-QfQNaFm5/nGi3KU8HyOUpmQwRJy0gLzCff6up5STqtbb9TQksMbRk+igdwSqgD0DVl76IHq7kpkcooJWo4ZoUw==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/Z9JCRA9TVsSAnZWagAA+hEP/27fYLAbDpiVYwSd1nkE\n5yUgL2JoTCweJrh4glQI6F1knf2dw4kltK9NYfamYUlpjwJEwxpAp8vLWlM4\nfI4x/MHvpbYjGQwWQNt0u3Cj1CzGlQHOZZbcD9qR1tofxtM+nDjjZZowe4Nf\nlosLDZTT+470e7l5YpMOwlxTg3Un5sqlfjyEpy0AqkV5TYzwzIKwdDHlSJaT\ng3QxrTgA76mzf/ZUnhu8Z7cKYmjFGanfWkOnhHN5VLO9gPbo2XGjezJtpZ29\n1ZOV0CEtXb6rVsK67zasWL1O32/nml1eYhXSkL4tPJDWGnFTOZq48NfY3l+W\n1jydDWrkeq1CKAK6N76kQgwhhkRDI7h+/AK4sM/ioUVfi8Ekd8bC6RVgNwhh\nONmht/c4pIHwSLMqUfXW8/5QzWIQUxdjUdkY9dTZspSrVY+EJlwZUfP9IaFp\nhJwTOicyKXq15ZMre9i9Ge/qfP/YK3/gMuzLUcohySMveFgjXne7VeEJ1jAK\nZdRvDgrRrRuuFhkLfsDLrPPgQol/ZjOB7ImpmQNpi46zyZB5k3FHB8DsQKUh\njM+xI66aPxs56Yt7X5npHy36aoa/LwbM+NzUOQwMlH1CM2LYr9mQ3WyoWejZ\n4XP+SdrbahhXka8AkB064zsBBWPRB1aZHWM25FEPRiOKcDRUjcrfgIYR5kCc\nuoID\r\n=5r+T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6QOsLeXYpcAXRzQPUPVzLn0E4y0atPxaSFdwnMuE2AQIgO4s3hAWzPyrAzcePiRoGR2UPvmNJZUwecXIRFpudOFk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.cdd34101_1543348041306_0.8396212688027467"},"_hasShrinkwrap":false},"3.5.0-alpha.2f7f3058":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.2f7f3058","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.2f7f3058","@crave/farmblocks-hoc-input":"^5.1.0-alpha.2f7f3058","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.2f7f3058","@crave/farmblocks-theme":"^1.7.0-alpha.2f7f3058","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.2f7f3058","dist":{"shasum":"bfe01ad1bdbb1a466afbb422ba08fbb86b2713fc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.2f7f3058.tgz","integrity":"sha512-Xpv21DzEvLGWfBg0OOwh+jb6hbT1czqMMRujDanpzlhfpp3Z0ATkKZl93c645dt3HrrDv5ElH0F+eujp5z0MBw==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/oQ1CRA9TVsSAnZWagAADW0QAKM+uRH0xQ3qdb/2alKu\nxgIMd3SBEEaFUvXaXw4HE950wI5PlTyv6ZxtoIhwh/QPFXFKNTqTP9WAoyEk\nPQCKvPHQSw/G+vCIrxDuQ3gU2vDjAOaZX4ZeDgIpBGcsBCQyWmVU03RBrL5f\nLNLStXbOemgGOYKMAFGnMbyXplOvWk80anKR4c2HP6cGdSevSmCzaOOprAqg\ndr5ZBm2//A8APRfQB0v7r41suDE77gI1WNTT/syBfpj+14FoDajKV3fXhc/N\ncMeIhxWKBMf7NYjDxQFclXEVMwZMlUw7ZRawXa4LNrfy6D/RP8jANsRfHWJb\nATrn03mZGINQBEpETThyeL7r+KSRrEsz/HHfFKbEDfRpSuFXH1lTs6B6eHHs\nq9yTnyvi00CQu22nvP6fFP27hnIY5Kg4gDxY0t1jrDBJyvqMmpKv5B9u0gju\nQ7LxiTZJT1QycXNlzrwES/2wUdls0QXkjaLVHxFaQZLymibfz/KHHEjXLzwg\n8sb1L+V1nESPK1hQr2SuV6F7FxnRLCT33MH1UCbap1f0zodfLesjQxlBE26Q\nGPhOC3Sjz7cbsLJmhDEgMBQvcJ0LV2v1DoWYWDzK3ND7+UKWaHFJ6l8PjF0C\nlfwPiR3PBOvt0VvxJiyZOgasW1EHA7jhkQ9xwzJcZuDbM9730G6yBK6klcmi\nr19T\r\n=eCtG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDAzhOHvcM7ZatwGayBAmT6KmLYVHyVxAM4A9d4a2ygoAiEAgildITm9t3cZZO0rb0Osq8c89mu3EREFm0bhgKgA0K0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.2f7f3058_1543406645015_0.34951328249702884"},"_hasShrinkwrap":false},"3.5.0-alpha.8657e05c":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.8657e05c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.8657e05c","@crave/farmblocks-hoc-input":"^5.1.0-alpha.8657e05c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.8657e05c","@crave/farmblocks-theme":"^1.7.0-alpha.8657e05c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.8657e05c","dist":{"shasum":"620f8b6e79b3666bd56781ec28474fed05c0d235","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.8657e05c.tgz","integrity":"sha512-3aaMbwY8B6fTEAhWwEXhnkThu1H3/OmNwYH4JK3nTOLXEXvUNozQFWmBexpQaH51YAC+FNU5kNezzt5Lov6I7w==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/sFNCRA9TVsSAnZWagAAsMkP/2MgInBmoqbFiJ4x92Mw\nIM4qKATmHVRcZ1bZka+2cGDpdw2tBYA1BSy17osQ+OwRuR2/eoZt3DdmhSeH\nV/QXqQ7dgFzEQSGivd2/Kq1cxLO7+w8OpvRJDoH8jCO83LVlrijS1OankdjN\nH6cwsfh5Vypi/VPXSAOY+Jc4MMq1NEXM2Y86GJe0iryZf8iYwo2r/gg+Sk/l\noQDJfd1V4kNZgrtFa8wsJhrCLgYtdWkCG1lawnNMi5kBUKHAAqGOIl3xEqSS\ni6SSBxiDvjdA97UiVj4Vo7vrDhaAEzn/SU3kYdGiB4qj19PraOA6lou0ETmM\nB3BtG0916uKy41msrxjBjpmzO2eD0Vdgo7ysGUuRpv+dRw82NbubthVv67sA\nQxXDs17DcbAbuPzpJkveHEJTO2YORDHz52+/kmSmT+MOqiRUlm+wVT/W3Js6\nvBKvku6uE/M7QXVJ9cvN+JlqCrNBUxukzbs1vow3Ipjw3fZuQ8jeghYpMql0\n/20qnSDtLeq2NjbVHD3JOunDqMCQVsIQigRK6D9figuaL9z3AguzOwuOIAUt\njaQnUOgtWsNCWGGJ7krxEyJ4Em76t5GuNuqn/+oEhlrcIYDMU9KZWu9mS5To\narM6jEVjeJUMA454/yJv9LDJjDOFkOR7LVjXbQF7IiLzioAySqgptUBBlDxY\nscov\r\n=8G8m\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICmn5Ehv6uqX+XQn0jK3W6qkFGbyjrK4x59zU/Eh3y9DAiA/k+k6z7judBynm+lJDITvuMYQqTjyw4ScBajl2CmAbQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.8657e05c_1543422284681_0.5928250024822015"},"_hasShrinkwrap":false},"3.5.0-alpha.dd5f7476":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.dd5f7476","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.dd5f7476","@crave/farmblocks-hoc-input":"^5.1.0-alpha.dd5f7476","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.dd5f7476","@crave/farmblocks-theme":"^1.7.0-alpha.dd5f7476","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.dd5f7476","dist":{"shasum":"7df18799cc9fd1bb42951f6a8dbb0b1c2af3f584","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.dd5f7476.tgz","integrity":"sha512-Ac7iQ02U+Ub1/lpXyEwkWDRvQWEhMtRenps62Azw5BT1qzyuwag3sE5dTFs2PZ5MwQY3ObypBe/e7L396EemhA==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/w3zCRA9TVsSAnZWagAAjvMP/3lZe8VkduoUY+c94TZN\nDYxrjdQ0VZn4I6/YJ5N2n4cpx1Lg0G70nAahP5h5khq1FucMlGVnCiJci1MJ\nX5DqY7Jj6hcGzdb0EIBLT7/ZRD/tSoiqydGeXgiqL3EeWqov8CGax34PxUPc\nlJWjxGwKR+0FWn67cmNN9kWw9S7RGQ0JXu98qkp55llupaQbSZ4IYLLeDFyN\nmsi2WePdBGgQbETZ8Ev/vrINYmTU8T0rAM1m5dip10C7s6jzAVQcQ4/A/CEz\nA9aGt4oB+y/nsnLAIjIpZdDYZx6CkDktDtIMJgmQVqgEerid6DAYTIO19YxK\n73bZG9riPKSF6GBUI/TmCWMb1Tnymz2QMMJ8NzitxT0gyAz6HdCDBvCsot99\nb0K9U3v3js5Vwcy/ftBxqgdntKfS9bkT13W+sNEgt4+jxLDYLt/RaYNSl9WO\nn3YTlRTc37Sc22IyvB/ffnQ3X8D9D+qWT63csNLiVNZDbKjRovEhSarHBI6b\nBaUNE+zYlyC/5IJPtALj6uKYCZZsgBGI4nIw3pz14PTc85K7p2QWilx3FV2i\nAgEehltMXQ73iicd/Q72afqJ6s7TFWGZbiW9zOlGbcPgB2PZXi4k/tMI1UlV\n6SQwejEtMYu34iqcRU7ZIEJhiINOJySvswmGMyuc0eNN8A1anyiu8OAVn0vU\nnV4Y\r\n=XnWq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBId/XsAY/M2qIPcuiH385PrxTvNLyF0zdlFiqO/3X2YAiEAkrvL48WkuUkIX41FNWB0THKOffIyPYbRYKeka/mFnac="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.dd5f7476_1543441906514_0.46268386275440654"},"_hasShrinkwrap":false},"3.5.0-alpha.e5a3180f":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.e5a3180f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.e5a3180f","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e5a3180f","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e5a3180f","@crave/farmblocks-theme":"^1.7.0-alpha.e5a3180f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.e5a3180f","dist":{"shasum":"e1c0d627ad586e43fadb4357e29d379658160468","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.e5a3180f.tgz","integrity":"sha512-e8pCRF/Lwvgj+dqi8wiO42Nkxf96EIdQFiFawRVTwGGgjIYVWcYErhlnubzSKG7NWlnl39DD4FX7DkYIcOn+YA==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/xDzCRA9TVsSAnZWagAAS98P/1e7z0tPrhWyceV72Stl\nAwh2msvoRXEsVZQKo+QSar+K2nonO7KWUX2dlfNacCWF00B31dDg9ZyHMAC3\na5cRn05GE+wkmlSkctiCUtlWEXxNBA2izBL3jiEqQZsOX5HQfH2gFl/VUaaq\n3vaVq7RLkGUpLMrGMysIrfzwCVjqhdXR87/OJe72AkbZH5JFJc6mxAQZ15Z2\nPP9RKOSXfs1gBjOUYxZxemkBtayPp3ryu6bGqXKEVW8XqrTlitjT9q04/nPo\n1jcyMQoK7cUuJu1WICXrb3P6NkifmDCWQJ6/C/oj/HdXZRWj844IUtZ8UOQJ\nCoPRXqXBssZ6PDNNqdLUGSY4/dDgDPn2qPtqHTVpwFN4pM6YQUiYzyMsoBcf\nCPeykbNCqHyvlTUBetytd12U+sdq5rnMV+0vCqNakFkSVmyhge+Z17M/t1Ng\nvOIoOE5ZzbvIIkMJKjiy1GudscwyYe+2Qz8RPQ0zzxgEMbwZXjlicoHoNoO7\n0JZw2wGBWGyt1XTKzz0OZ+HsDSvqbZ/7vcTFqYrIBM2MZxfdLz1WeDh3bk3A\nqHgLnn92QnUIF5omF1E7ZuuEekNIoxUmsXcwovmNmqn9NxH3IQ/XSUgL4+Eu\nmhGPIV13eUkUKos56fxl/XMfIQVUKtI9Wp9pymk7yYjKdlgtG+pMBA1PGaJy\nrpXL\r\n=NzGn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMqO77+sRR0/BjlF1TtvIqUr8ki3jj4UlMhFZdgu/IAgIgPNtmjyJDDny36QLt96UneUlWcXYZVZq2AaUBExEDhPg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.e5a3180f_1543442674789_0.32700800249845097"},"_hasShrinkwrap":false},"3.5.0-alpha.d4c07955":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.d4c07955","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.d4c07955","@crave/farmblocks-hoc-input":"^5.1.0-alpha.d4c07955","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.d4c07955","@crave/farmblocks-theme":"^1.7.0-alpha.d4c07955","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.d4c07955","dist":{"shasum":"4822448367953350f4e822edb38fc31bac6abb88","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.d4c07955.tgz","integrity":"sha512-utc/7JA3YuFVk68BjTMoMdL9KOZr0r8sgrWVGjD4SYSBYWstsENte6Gje/DlZuwYwAVekLBKhahRk6+ZTzHcUQ==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/+FvCRA9TVsSAnZWagAAaI0P/jk6gN+tSEFie80rDTKg\nH9lspvKnYzfzTtc3i7MVhkjlTENjXDbfwipXLZ611euvMRWa8wnppGnS1muC\nv2Y9MvBltyQnGFDWPUGhNBVnlmgAV1kVvY5IWIYZWFgzGm/MXpL3btv+zE7N\nDiE5u4+qTXQ6lSvCb3CnOejlenUwlQPhVqMpbAB5UJJ8xdjDfO2puRrKX9fm\n0HntBGtXnw0L1Ad7khdVSYTroiTvz9D4FHEJLKXAwGOs9KBfjoxbclcyBGNq\nFu1WyxqlFzdPZc1Xo/OYTlDKTbuBOafEOKm0zmpmtPqOQm5504pS2ra+yOV4\naS7HDYHgKt4r2FV51D0vH1CP0TZnfFRF4x7V9akt9CLxyg2a/pt24trkXYcQ\nohp1AQfauTdx9BHZAfV1Jv3dOXLc6CBwg36NOnAc/2OlIjFsxDCNbHmd5y8p\nwOYVA/vI1zfdSDwdOlsBY6G+3lLlSeyUgKzcsTypEUk+ZulgspaAzU/85vhI\n2tOB+BfVvQ8YZ/dn3fSt1qv8Q56E+eXH8iREFUiq+9VTJ0CJ1svCdSmvpnFF\nB3Rv7OZJlWkLqZBiYbTuzm3UYmX7uF+rRCtdmbJ336mg1+604vAdkSI1kuPb\naCJtFSFjyd9CJhOa/Ahmu3J82BQhQ0aKkesWfW3s+h2fo2ktNKyTIMz+1Qbs\nlk2K\r\n=KQhl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBkLJ4cRKaikRAE/NZvH+PN9z12du2wuMaBNKPvac35pAiAozgjuo0o0v4sTtOdxaG+CdmpGYxfj7oN29/a7gGJduw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.d4c07955_1543496047052_0.564993062451864"},"_hasShrinkwrap":false},"3.5.0-alpha.e03c646f":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.e03c646f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.e03c646f","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e03c646f","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e03c646f","@crave/farmblocks-theme":"^1.7.0-alpha.e03c646f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.e03c646f","dist":{"shasum":"da966bf6560ca1d71d81d718a00fc326a1997be3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.e03c646f.tgz","integrity":"sha512-g4NmJiwRDJ40VczbPuD9BPJpApaOsfqC3d4S1oOWlMxiofAN/repJaTO6q4ge9a4g5SnthXJmm2VmR8gKrdBZA==","fileCount":13,"unpackedSize":59324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb//PyCRA9TVsSAnZWagAAKiQP/2VmoeXqgQi0JcQnDo3c\ntz/m6gwdfJ8Mb1efGx500iAJ5pZrkS7LXppZ5P/8ylP7K2CM8IUXynWKwjRv\nullMylInxO0b3Hqp5JFeIDOI/EtXYVWlK0lTV+UGYy+6FuEjIhahslc7J2wm\nleyIimYjNzt3g9Y6vyZcJGEx0Af51FUVVbX61Rnz5Z97NUvFBwjJQIE6Vgrs\n+hfGlWcKFM48iBlyOw2BFDmn68+QwCS0ZsDYyLADA32AfhNmY8mU/KAweUxi\n8KcPw27U1SJn6jQXFlsSleOyGdZx/UVf4dC18Zu2t0vR8JCC2UlOufZaSh9A\nXLHJlyFuje8zAuahJ1JsZGUB1l41dVtOqBT8sSYxwXOCMdllYVB4pDQSLjdd\nIIzJFQtnCbl6NrUYhoaNjmQ1aE7oUivK3XzJw7s8JAzlLUns9cT+b21owx+Q\nig6wo2JvnSzT7jXqnryPcMdsdC7bIeGQAiVol2ouidZBsep5rpDQsnVXVqpU\nSkDW25MpzilmY1cRmlmELiVm3KB7rpn0OmMjmz+ETKJv4GopYQ7xDKbX+upZ\ncjdxl4BuQ8SUUf5WV16PTllrZcwrGViSW0P2aKGWxBXf2Msb5qXxWj6MJu0h\nJ2nspc/NO+t40WNMBCDvFh93vbon92SzQVMm/elrLQTHiZRXvAb/48CLKbOx\nP8k2\r\n=LsPc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCF6+CuzcXaaNSDLNjx4EDDE7fDNvcCCFdciYQ090hzMAIgTKyBLEQaXAs08P5dbgFk4+4nGtOhswRGZEuZnFExR84="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.e03c646f_1543500785981_0.5483913374040892"},"_hasShrinkwrap":false},"3.4.3":{"name":"@crave/farmblocks-input-text","version":"3.4.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.2","@crave/farmblocks-hoc-input":"^5.0.3","@crave/farmblocks-hoc-validation-messages":"^2.0.1","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.3","dist":{"shasum":"bde82942a72d5e95defb9ba92d6d6e505b237de8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.3.tgz","integrity":"sha512-lmAM7b9iNkSsAWtYKIsPupPOnz13cMK0mc3pDnH8B30xHnE6C2gocZziM6CBpMZCaZf76/+Cyw0ZO3msym0Blw==","fileCount":13,"unpackedSize":59205,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAAtWCRA9TVsSAnZWagAA98EP/1AlueGeVwxTYJeAfU+a\nHDMi88M+Dqjc8JR57raxgUsoIeLZ4Xxs7erCdCFRYvPtW952W0IXJhbwZnLr\nJwHFsiFCNEH16A7A0tjTUlyaxyJ1vaGGswRSsPUWDWIMmUZBAz7qU6N8u2L8\nFMzhqKAhUc4HImehpoCj2FXgn8f6dxHFmEv4YgFWyZu0ccDm/BXWFJj0e3MW\nuwXlNiAtg+yi/8Vvj/IAkPRBGKNjKHbk61DVVRFk8G59b1HH6eQQIZFnl44f\np8N/5ytj6vrR8qbGMKBsRtLKlhAruSkiw72GenDdPvdhjtR2tqV7LKkIikJW\neF6ijPP8PRdA5a8hAx9/Hr/THFS/+8tRzePOuxHco/kVfdS2X2l0JBf5K16/\n/AqxZoPpsUJamfL/J20QQInx9PEFZbJEa6IvJwZLx99CAeauSGN/xt6SqXTi\nHB/oMugEuPxYWQmvz955REYVtyeNoPHrQSyoG45i0x2jYpofzz2MdWyCbiyI\nT4fpuf9zngUEHAwKSiQdw3pgM9DhWlB2GgXhYysaBOnSeQjMfpl/kwwAKyNb\nakh2vBpe/1kdlbvRGQUCi91/Me0HmKoxstMl58xhdIiI0OKMlFkVZemfegU2\nTr8f4VLSmhe/c3tmh1GeP7dJc0djZWSSeUNneRJLVacs/W7/wWr7X2UvJPCs\naX65\r\n=ihHL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCK9kEZNnpbGwAVSovEk564LjJlcBw03CraDl864FchQQIhAODk28pkZCp9X/N46mPHwsZqhrFP1RCOoogbOO5O3bVD"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.3_1543506773816_0.12725097077453373"},"_hasShrinkwrap":false},"3.5.0-alpha.a11b54b6":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.a11b54b6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.a11b54b6","@crave/farmblocks-hoc-input":"^5.1.0-alpha.a11b54b6","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.a11b54b6","@crave/farmblocks-theme":"^1.7.0-alpha.a11b54b6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.a11b54b6","dist":{"shasum":"52c583027e1131b324649297ee6b25e0c9c7adb2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.a11b54b6.tgz","integrity":"sha512-34XRdXo2+e2VFCpD6HiiN0+8R9RvtaS7RQ8jynnZ3DxKwfLqz7cKYwloKuSG2UErI0SdwFQkGFhulX1HwlBRWA==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAKZkCRA9TVsSAnZWagAAY44QAI6qubv+iwzzU6FFIDFa\ntcSnjVOrT1qBKgzGOyEyijDnCZQRXxhXiI1ss1IwdYE4Iy3H4F6Xv2PyTg5f\njF5CysqHJDfD09NG6AyeBPwjImcjPft3rjWi2Rol9p6NoWaxw37HebcNVfs/\n9hPhOiyQPIRC0teTrDhxxhVc7kvSogUD4mfJHIxiPDZnzQ+nsTgtcLT2B+O/\n0qQihA0TRDl8tqRrijxon7cZwGNNGnM3Y+Utbq7aQDOLzfURPEyon2lR4eEP\nTg0tDxuPaX65m+eB/15lD2WOBj9k6jeZ0jOLlfJI9vjFN2ymGtAWA0oTP895\ncl1yMzf8NESriNauY3jSmfMk/C3YEG52Tcs5yozzHVMZDFsAGLIw48eWlzwW\nbFgbeVK0YS9Tx2sqCrMsG52xaGi5tUGjhAK4FUXDy+fCXJnFlXXOfeGoMfhs\npXPFgm5oI5fib8u8y1Qj4IcUSJemc8xfHQiXbDBJPWmkhrPlJWkvwlihc4ur\nhcm7qF5qZAxmSQaGQqDYCsG/gIvj80/rODPjT+2sWN58CU6Tt3TvKaR5YAY4\n3CYeQfTHi6nP+tjYcAXgD8k/LfaFH/oaOOBE/FdgDyq+iu3faD2Tjadmo32K\nnmAhlt42JAmk3h6+azTSsChxpX7RZmWz9xqLWdExSLAtz+tRoFR7JfRK0wuC\nxOIb\r\n=y9Md\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCF9J8zFooBvthg91teAl9hzkt27NdCrubRrv648GnhbQIhAIxTDEg5RUYRsij/R3M6gnbYdiok0gQpmmsJyPuBpNaW"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.a11b54b6_1543546468046_0.20614389823770263"},"_hasShrinkwrap":false},"3.5.0-alpha.e7623c67":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.e7623c67","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.e7623c67","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e7623c67","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e7623c67","@crave/farmblocks-theme":"^1.7.0-alpha.e7623c67","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.e7623c67","dist":{"shasum":"4dac646fd3344c1362550679fca5e04dbcec9c1f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.e7623c67.tgz","integrity":"sha512-0PVSC7Vsn0RJX7bnFxdqKlDlhCbXLEtQ380EDP1gA4qq370Ky1jvgSDy+IS0U4d6/1QF76MWrj0y3lbQ4sXN0Q==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAUw5CRA9TVsSAnZWagAAHTwP/2FCy5u5XeOPiROOfxGm\nNP23IG7F5Uha7tb+QWGDuBiXNu4tDGD0Gg8/MUAwnPnr0Sqmw+RwZmyFT1b5\na0KAihw9o09a8pns/xb3uzGpVbYAFB0nbcczc+ZDzVb7m9Kq7nH0n478ziJL\n3uYQziMuOaTzncnKEYbteuypGzFhPtycK6wiW8e1d+ZcZwu4A7Zgq6aVPdKw\n90v5nOemDkWeeRVsWniCDHMNvxe/JpRj1GSby15H7qliWr25ObYBBVF0fkMy\nhbv1ofVaaIB/rwUaudKsVHrCz5cW86C3RxROdr/6E1xODlccrcYEWn/nvDfa\nrdMgR1EF7zE7xRgGl2bvFbPjthtM2N0ZXDQ1soxuZWmub6IrdOyLf10kgJ7F\nDd1TXBY4jk07PhRQppO/khmFOSAZu2yM0wQIteYMiEH/dVQqaGjJldrE+Tmn\n0/W9383Fc0YWTsMHc/nchyemG/tIz14EFAVFdsheFuHUwoEPYDwPPyV0mcWa\na7lVI17FlWtuppn/noIdWgDAtOdUHLr/zlJzmJNY8AvJfdR1a60+7pyWsw+/\nYYEODG2Saqag0/WNZxoGOjrI/DC+2olYMipJ3zFnn1yi+YZR97fSUSN9bA1x\nPN1Ty+5Sn6ysjyCKU1h0PPCAg0Pm/JQT/o9Mg/N25csFpCSfkGpT8L33qm6H\ney/G\r\n=M8Ml\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICPsFs9bdSMQRRV5PWn6Uro/CbUxEBQPm/EOLRSHYPXgAiEAvqBywzpHYOyODCQk1YjYbigPS1+BzDz4/eTIp6P1KuI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.e7623c67_1543588920469_0.5010089392003965"},"_hasShrinkwrap":false},"3.5.0-alpha.ee3ceaab":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.ee3ceaab","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.ee3ceaab","@crave/farmblocks-hoc-input":"^5.1.0-alpha.ee3ceaab","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.ee3ceaab","@crave/farmblocks-theme":"^1.7.0-alpha.ee3ceaab","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.ee3ceaab","dist":{"shasum":"17b7974cf58f634b14d6996a74726859c3de481a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.ee3ceaab.tgz","integrity":"sha512-aLQ48YY+u4U2cyxTMvlcL+kUnWSHCxZ86ZSiqnNr0jsLGvxw4oKSSNtcbX4JduRVNHshkd3AiqD4UiIPHLHk1Q==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcBOOUCRA9TVsSAnZWagAATpEP/iuPnsg7CJwiTim2U9LU\nSNvZetRazqyI8U0U5TgGUtnQBL2+49tUbmmK5IHksu1/+BSphkL1o05JwsEf\nr+l3N3vIpMOCEcWjMSyez2zHwkIX2OutGjUXNVw1tT/yuQM3B3lA5meLTMke\njm4aVUjEu5GKzeCGgk96nmhKUO5t4WzWN0x54TMBforISzgOVjvgqgVqAYMw\nKtjmzwuBCYZCq+BWwgLPUUB1cSrdCTpL48ykpFpr/XDAeJu3Gu9xNb5qYN/g\nR+QPckAnYJn0cRo3hYeraR44tuHBSlLlwOLgZxtUhBBs57qIQNtPKc60mUfX\ncX6/JBPd/Nu4Kn9bqTOtMQ6fusHkIXYuNWKBw7NXBmjEzzWQ/JZgOETtFS9K\n7CS+kvT1ZOdqdkiWa+SCPOwfYaUEDpvD2QXLHtZKSCCYPKKAA42VEp70D3jd\nPK5cBHBBBtlGYB8a4e0xALUUF5wwCia8I5Z0ppepWuvY/hXdv3DinkQIxFqL\nveRzf9gqkkrLIO9HRIcNvrAzIczZIo6Q7qfku+NTUu1XVwV6PUtIjPOtHs1z\nt0OHsAJKkpBEI6RTsE7Qfaj/zTSwAIVaJUcDrj02tefGhfwrcnCv1l//9EL5\nbT4IdRSp9/NASa4dmnGRhiG3iJyhbLtMJrrBpObmme/rmCTM/HxCoDwPmjeC\nCPFK\r\n=jzTV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCfOtPDRXfMuOkjEdFcm5GDyev/mmhExeCDvwMqOiej5wIgFPYrR7hWTjUVV7AOXDu1mh427kST4CngIiQbah4IDQE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.ee3ceaab_1543824275974_0.22024554388437734"},"_hasShrinkwrap":false},"3.5.0-alpha.e87ed319":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.e87ed319","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.e87ed319","@crave/farmblocks-hoc-input":"^5.1.0-alpha.e87ed319","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e87ed319","@crave/farmblocks-theme":"^1.7.0-alpha.e87ed319","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.e87ed319","dist":{"shasum":"3d0d8c972cd89bb79357a3180c3750d6f5408fcc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.e87ed319.tgz","integrity":"sha512-v5LawWYkHfOr3gNhfayILll4udrNdgBpyuVNA1JzHuorFScOIZAX/CzEwfkCbG21Pz5JI3XcSskOD+nnkBfCQQ==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcBgErCRA9TVsSAnZWagAAMJ8QAI2ETgzHNEQwnOmM2B3I\nxsw4U1tvOu1MskQA1HRJYeKAFhcNhRSlGdQwfGnGHkGrHKd/58zMEJYnzAlz\nTqCg0D8B/t8D6jlWGJhp5p1V8zMC5zHHdqynDaNQ1gA3oBJr74wW4aH060u0\njIohWJhRCMnJtpXu3ZrPlYUL4bmWz4TfE0MphMNKwUtUGwCXmlSUg36AsKPA\nFgQvL/5yPD5Ft6APl8qMLjZQ1BOZTKk65EDKnOEkQ4LNJCWvhQhAJ8mWyg/B\n/xtmqPUC4YCRBz8ZXUfmAXvpkbCYwBVc+ekkH/eRVNH+w1qFBcHH+kOo2++q\nwWXSJeQ7dtfyjvxOZEDKdlY4HOGMBuk9rAyz4MpV4JVneY7pDdU/TWeGnvIX\n112xmMSRlqnPko+6kqdXGRZLSgzSorCXeXurKHE3uwVTUdbVA1tMDlPdzZPU\nsmht0LWhP4BcodDh/PYCJJ/uvPE91CK/QwfOGJFfKpRC0ogShngrTqdABHqV\nmAOiXruiEia/CQ31pOvE0pgmtPSfR8RsOnzoizDIjzkxogfauFMucAfG4kyw\nnMJ4xWaAWknK+tqNIiA6PY/eLxIv6fLDiDaXvTMrXg5pdZddunIFTmeD+gL9\n9x94NRDcEoBPiTfzrZbrKArtkrXLREUftDEDCk24PMWM1iOSa46Efkt1L7rR\nfR6e\r\n=aNPD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDTax0a62boLE1bu0Zu9ZAIQ+Y3TNvqzMqYNaOeBaj7eQIgCTvM5jiAO/Yd5Dr0GM/64qQYVH3nUG/mEttcy4Lvj9U="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.e87ed319_1543897386490_0.7914235074018718"},"_hasShrinkwrap":false},"3.5.0-alpha.f6b6d992":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.f6b6d992","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.f6b6d992","@crave/farmblocks-hoc-input":"^5.1.0-alpha.f6b6d992","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.f6b6d992","@crave/farmblocks-theme":"^1.7.0-alpha.f6b6d992","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.f6b6d992","dist":{"shasum":"34a93a60173fbb66e983cbe3de835c2c86d88bb1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.f6b6d992.tgz","integrity":"sha512-OSWW3KvIM6e/a1vT1qfvjfKIqvsKBoZEs8/MtX8l0NOZWtvhYrZ4vuSRu5UorRB4z/S+8pDqHqREg+TrkjIozw==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcBlfrCRA9TVsSAnZWagAA6wQP/jLy9ar6bwZGBIlHNTtM\nl69y1E8Y8NDC/DUeGH3cKkVAjAULOuiAmMRlu6fwyWKFtRckkECuEcgW2Mbu\nkaJNFOCQhWObwdgtdqr83vDMxYPaNKQyFAXzj60PIVtBCi/4JYu6b0LDTA6+\nqn1zB9toa6uK3fX0KF5mFw2JnYxy+j44qsq7xX6qac7dyzFGkjCiyRc6hD5C\nXH+IC9unvxCSahWfKd4lPg2QE47tYPTcLgMdUdSNft8yndxhPIdT20/Dx7MU\nTJszjJ5tGeuBtYudYUDiz5jPVCOw0M9rA9f2X5g77NBHwLuHEGlkieT8eVQh\nn9VbjUUcSN1LiuAiRAd+p/zL8wsB48UukNTw8vDOhB0pas8vBPXLnRPWPcgY\nDsz5xpeSyS5CsF0yZg6v5XGYL/xuJUKYT1zZk8XEPWDXofxtzef4NmnZS9Am\nAm03UVzkGuxWGUi0F2pUn7fHQUCziBwWIOevFw/ZUQe3WOiRe0JQGaICFjyp\nV5hw3tl+rKE9RCOWbSbu07hzGHOkAxe87Cwzx82bjA2ZOKiYg7vkW9NL/R5+\n+U23KCYaoOegahbTFyM8cOQ7bbiGKS1ntW5CohflbtYXc9HBHgR+VgCLVld5\naz3yT8v0cfvwRo5nScoFkDIrbbRjXJ/Fppcktiat9xr+qyYcuMqTUMSCnpxG\nCUFt\r\n=Orwa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3fDvarGXw79tOIedU0X7GDh439yTODEkNOJh+duXUAgIhAK6AVm+l+LjJF1cCW0Gt14nxRl2mPFlBmpSu+8Htjz2V"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.f6b6d992_1543919595271_0.5824634777523199"},"_hasShrinkwrap":false},"3.5.0-alpha.5a5c4b6b":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.5a5c4b6b","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.5a5c4b6b","@crave/farmblocks-hoc-input":"^5.1.0-alpha.5a5c4b6b","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.5a5c4b6b","@crave/farmblocks-theme":"^1.7.0-alpha.5a5c4b6b","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.5a5c4b6b","dist":{"shasum":"77c8f0f2fb4dc5eceb268ab390792ec890ae6cbe","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.5a5c4b6b.tgz","integrity":"sha512-J9wyDHeImnsO3fSgcPKQeKK75YMOgafTCuZVuGLMYNpoY7GBP/BRz2mcvq2YazIltmgucAC/4BIGWWxpo3wWsA==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcBnyvCRA9TVsSAnZWagAAj/sP/2QiJ7I9ThhjgcwCJuuD\n5gTeKnsHdE8CMgAnqq5D07ifCer7I1ATqQA7m04tUFyLzEcYZBHVtLjn56P4\n5T8frC77DfXY3g3zGcJrqDT9gVUvMVsz8d3KlHSOH0LXy9rmIX7gZ4zhWmzq\nKWU+OdzpFmFHVJB8Alzaf9q/RQxsjeNlC7Co53Wl6EQ7jn0ql2fMyKmXPtla\nRaxfMwDAEPneB9JtqW/YDRmG2QpnIDZw+wdjB41O+Cn7RiuXpcgh8fWYsQ1j\n/KtdIUDhxJTiVSb/uKFJf9/0opNmIIwFUnwYEVHTUSFfEUE922KYrSSynRDQ\nu3KOIUuIFj3jiQu+RPgFh7h/UVQjUFs8AqJ6/Od0tpASFognGy+uXgMScOXB\nrJyRK734bofpXLcmjzAYxkyiy+gGrsil3QZ96bSffFzJORArYLb3xydbHms7\nkcqRlfKUET9JKaYghkM8pH0N5A4lKZcA/rycIj5vbeYn8+RlgnIH/NStuYYC\nRl0sKpl8LmaXcebSlnYyaMV3wyXgHGr1vtjpoLb4NvSbpo+oehMtGYBc0e29\nz9rjGswqnKzfRUuIU4qTL3Q0jA9NLnSkjylAggwG/LAmsJ82kzkDt1hZvLkj\nH+YFPMJDf12rOgMBezu+4T43ir7TTBTtgnkxzckQ5O0kprALMcPY00hN1Cuy\nc0X4\r\n=q4NJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBeGvJwXeN+4yElGvmab2lG+gFVjOUfSXtjS362vq++5AiEAztOo0Os/U96VcHTr1kO68QWJW/AZD+jz3aZYjq9kHdg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.5a5c4b6b_1543929007234_0.31496083165577415"},"_hasShrinkwrap":false},"3.5.0-alpha.a6658924":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.a6658924","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.a6658924","@crave/farmblocks-hoc-input":"^5.1.0-alpha.a6658924","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.a6658924","@crave/farmblocks-theme":"^1.7.0-alpha.a6658924","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.a6658924","dist":{"shasum":"9915554cde0a10c1a5910e1b645b01bbfaa20da4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.a6658924.tgz","integrity":"sha512-Q3mCe8mo2rCaL0xYt5VL3fM23oWG7sQeLLPS6f+GyLtIj2uu/G9hWCyFw8O0CkYO+zBt0ASAdNiqlovYQsL7Cw==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcBoz0CRA9TVsSAnZWagAAwGsQAInUkcytDexzmSkHqDmu\nHGiz8jlJa2rQuKjOv2cd7f3FJ5BIgQSi5xeWYTCjBH386mzGxl9+oauRPino\noAslUQRjC0zTsodE2kNNEi41FWVYU/L3dvanadOhDM7syTnPAwG94OZd0s2U\nTOsASOxr0jvu7/KZPGZ64x0H0gNGS5n3f4Fb2vAEUHjou5XxhMmTdYcT/3Wi\n7c7bAi6e2BeDP4ZRp8BjFGbRsFNlxx3CU9rWk0sYfrVjNzImDxxkPMx3Wx5N\ngHGIrCAcoLvZZ5215V6hBgJpce9ruZFllY8aNNwyNlJ5qVkx4s9rwiPJ+TgR\nbcRQnA2x+0UUYTJ7C6SgiY1EN3t1aGDv26px06TL/ycrw2hXCyTE1hyj/oHQ\nlQFSZe3Jg8dqeg9nbHXY78FFRoGgEu8071fK9uNHZocB5fVd2Xp8V0sqKShZ\nwOMgd5ed2fQTB0aqyvHAlVth+zT5Hhv4yc4Sil9aCkQ4aI1+7uN0zWa0hyrh\nb1HqfHO1uSLF8lKPcCpx2OwJbUIEsO7SQjF4w0lg9V7Duh2SNvFfuNvSmmwj\nAOhQ2JFgvWWTcqVs6sln54hywJBRdb2LSQ04doa0eGGqg6sBtrPgJdHdwYOm\nfjK6SL1YJBzmiP94Sbj2pnpt9GuM7oj5hnHMlgquQY1tPd9djoG3tKEO0ckG\n0kSH\r\n=vg2j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG4zYZL1Bz1Z2yot5mc1+lx53gLf/Exj0/I44n3akSBGAiB8LMryx/Y8EGS83OcNkbPg7eye/n0s04ImGorKrShTYw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.a6658924_1543933171453_0.5165478159490555"},"_hasShrinkwrap":false},"3.5.0-alpha.f82fd6b4":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.f82fd6b4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.f82fd6b4","@crave/farmblocks-hoc-input":"^5.1.0-alpha.f82fd6b4","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.f82fd6b4","@crave/farmblocks-theme":"^1.7.0-alpha.f82fd6b4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.f82fd6b4","dist":{"shasum":"3fa468e4772e88ece293142ed15184c3023d7662","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.f82fd6b4.tgz","integrity":"sha512-A9nJdJ3zdgCR9SJixMLjtimo4nSnfMHAmvRmn6lBYlMtJA+O0K7m+72VDRf/Xw0TC02mpB7mYex6yx33TIBdfw==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcB9fSCRA9TVsSAnZWagAAUC0P/jeEOSxmwavpd3PJuR6f\nAuX70WfprARGt3iqpWaAuDEl5XoT+Luh6IHXwI6wb7es3YYnQOOU/SgfSXgE\nt1mCDaIOjdgNPs3LqvAitGc+WtGc+9fh3VFiVANj09RFMS20dRpY3xRJyInl\n6sCx5H+PnouPiM1AuP1oXljK82rX6+xE8kS/DXk/hh6zndHg99GiT3YElzFO\nALR1sxgQ0MkoY4l4AHuJDETlwYdrHIvh+K0vBt6ChItyc0MNuPicSuZfYTBV\nNNjxbhNUSJg3ljNnAcTbJ6fkNBkeRQH0daWK9P75r2auiD1/kDkNec0OZVHw\n1HmZrLQEu/Z/z+AqYvwUDugOWBwYtXMXWfKfHCLwZHnse6Wk6FPG+CBsaLgY\nWY641ZaT06SutiZ1oditRTXMI/twO9mMB9v2FNT744f1h8U/mVaOuW2mPim8\nACLB8KbASMCT+heppsOt9JJ+4tMDEY5vZyVHRF1YEXt8xNswCrnWs60OILXA\n8kf0vKExzV5FYSuXIC1KswJvgaOQForZevFUgx4wlvXWaST3TnJzDZwISO0O\nPX1LFy6B/fah/nJ9IOJNYSvDKOXad9L+FYAXSC2WGTLCKgJlsKy7tE2WoQu8\n76hZEpLd9RUJKAhZSFSOQ5kXLr4KfjNswyTO5ABLWFc76mf9DY83GxAbOlvi\nbI4p\r\n=9e99\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdznAA/04qatEDlDWSY440FXBDzf8jp7d3Y1z5M4Kx3gIhAMvq6CMn2wWOaVZ2iusjKBJ6bQ2dBflqu1RACuN1J8qt"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.f82fd6b4_1544017873840_0.15331334595189894"},"_hasShrinkwrap":false},"3.5.0-alpha.a45fca8d":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.a45fca8d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.a45fca8d","@crave/farmblocks-hoc-input":"^5.1.0-alpha.a45fca8d","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.a45fca8d","@crave/farmblocks-theme":"^1.7.0-alpha.a45fca8d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.a45fca8d","dist":{"shasum":"8462b340e4737436ce48023a7065c7dd394cd70f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.a45fca8d.tgz","integrity":"sha512-zi6Qr7PrInEi3bOdeWOV9oZApljISfs9GLHhFDt3zles0DixFs7gDR2RifUduiULzP9Xtv0TV3fetxQ0No2Wdw==","fileCount":13,"unpackedSize":59528,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcCfzMCRA9TVsSAnZWagAAdAAQAIGVW6a3cSboI+iQQPAg\nFx1Vfx3r0Lpdrmm7aFHn2xjKmOPq65PzPAfuRwLgKz6ixWYt0aNT3ixalOhC\neayuQ2VqmwU2TtkTndPJGEabwfJagy9+oE5W4bTlYfsjiMW0LzMu0GMk5Fm1\nF7raXqnnxu0b3Kdu06ZLTLDnTmxEWWT829gIKXS3slrq4+FK9Jo3kh7MYOAB\nta6+PVwQxZ1B8abRPLZdO1ImjWQ8HgxF3nRZbzsrx4UHUWAeK47/pG/1oCrT\nZhWVus4m5A2Kieg5H7Ta8qXUoJwz2fii6e5BB6mKMbR7vtkPwbHoTTUSGcWb\n4Hyifeukd8SRCNt/MxODp9UcW96J7ql3Spl72e4gV3ZughzKAku0KdW1wLTX\nwo+gNDD9YcgW/L80A+GQknD209Vs6AeyLXh7uT+VUvHcErracZnWsG5a9DYL\n27tpnOvmunt4MoKg7WYuLK/mvp3BmB6+Qo1STMrkaO3TMrPh2Z7YhoySmnMX\ntBqAfeoSKIpAH1Wx9EF9Hsk353dERKh/hYxLTpvwei2mN0k0bff9spA1msc9\nbNk+un93xHppIUXZCA1bbIxJwkqZqS/cP5UzvFWqBAQg9b3dxzQ3MZtwy0pz\nyG3vojGmF+3Bk1ZdriaOpS6SITZV+NR0QvEXf2NOhlgI/yAdilyBcABv2ub5\nlf30\r\n=Jq/U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFUkKLRZnFvxwXicHmpnX+xqoV0WVzgLvdcN6IODaOlGAiB1GR77mibMjoEzwM9uwA4iqf+aoid7R9T4gN0YqHrvvw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.a45fca8d_1544158411310_0.00020124829373968645"},"_hasShrinkwrap":false},"3.5.0-alpha.21ea3e28":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.21ea3e28","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.21ea3e28","@crave/farmblocks-hoc-input":"^5.1.0-alpha.21ea3e28","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.21ea3e28","@crave/farmblocks-theme":"^1.7.0-alpha.21ea3e28","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.21ea3e28","dist":{"shasum":"8d708299e00f82b1b24409f0b35494668751a3ea","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.21ea3e28.tgz","integrity":"sha512-05o7kbv7DBTauUF3LoglXIAphlZM6jZpBgTY8dhsononNjj/MJMAy9vh6iJHevWqAL65tnzzpHTFAylikt+j9A==","fileCount":13,"unpackedSize":59528,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcCfzXCRA9TVsSAnZWagAAC4wP/1jF15YUBHLbhqL7c0p7\nAVLTXgEoZxuDIGNUiuJLVKvIe8z5MFbJ4/R0LNRV/jsgQ3RwFuTcXVnSRcvK\nsKzrBX46qp1cbdHT8CozLmXw6l8EE+vknqFTvPCys5RhgSNHV0zEE8sfKdiV\nj24fOirdaDWnE+fVORlRoIbUIwxRJr5IFssOOLuPYlIDgihC/agBZXmzGu0m\n/UlThYd/6zb+wQtrDqh4z1x8DHHtpTQOSmJdhy7T4B4dZMKGMB5vGMQi6tBr\nojVOAjM1haeOubxxmsjpr4+5IJLZTashGs+qm5yxvthx/5O5f0IAFgrKT3Tz\nA4J4ft6JIeZH2SZ5ic/8mOtoW7W0lWXIXcPtb8kV47V9OtH7RRisGI9h1kE7\nrOl6gQdb4ZBQOmU0C56foc7UjVt4TYlfq5/sfK1vLp9MAt17SiV17KriybPh\nWbzwYpyrFlDRax+q47EAdEMS/9JuHl0nS9zfzHD1FcP0ycxYOkuwfpz4lGSu\nU8/w4RHQC8cuPN0ElWYGOtVvMDx+svjY3BIT6HbZN71Fa7DgRrQZrIS0gXTd\n5rgnEHZx5YdPsow7zVfqMeU0Fm7vX/3/ZQqsLA33lIFsnxZTh6A5bPHPAn+T\nZtk7HFG6A3mZfxQKOqKeL5M31d3zMnp1KqXnf9u/cTvYRlgpgMHbi2lJEkrQ\nt0PO\r\n=1PqI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCcUOqA2l3HkuxtJb7pPMo1D7GIDGuY58VW9ranLbm8CwIhAJ2ntFV/LUyau7PtPw4jwhWiH3eesYEO8EMcCQ3BEK4h"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.21ea3e28_1544158422856_0.3784091016229776"},"_hasShrinkwrap":false},"3.5.0-alpha.95d46834":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.95d46834","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.95d46834","@crave/farmblocks-hoc-input":"^5.1.0-alpha.95d46834","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.95d46834","@crave/farmblocks-theme":"^1.7.0-alpha.95d46834","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.95d46834","dist":{"shasum":"f91e5e1699854856ba27b2144fe0cc5ba4c8ecc0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.95d46834.tgz","integrity":"sha512-DxVLCgmsv/G2Si01nara9qEHOqKXGcQMmGnVe4NDiaqJtkSOp7rKKuo/qu3t3+7bOnXtPcqJ0kkyhI2nTKtNMA==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcClr3CRA9TVsSAnZWagAAOsoQAIHWGZtiT7BiYAWlttKz\njZWQ7sRQvTHYhXv/VQj/zKNQ33PSRuJuy98XvN/1IIT1J+uaq7VfCHTGSIP4\n7Kft471QUGj+22agUqBC2Tz6O9veTBGBDLPZ4FsqVYVXq8M7N6tx0dELIjjT\n6VQcVZ5JQfJjzbwB10R0pn2zDYvXQQWLIIvpKwyjPRwhExUpqidahtNaJE82\nXNqvxXIjq39DjkRMp4oleTDi4lL84LrD0yFlnCBqpKlLAAwI3iUWmCa9bVQk\nO2WfesqxjCJ81p8wZoOTLd7/aGruI2bgJ8yFDAPC9eYbCwnIyu+VT19azJyl\nNf6vVNv98mZmY8D8gFVG3XrGJywYhY+vySv+SuEp0INBwXpvj6rwU1YGy64s\nv5AruozB6VWQXigqOWqLrI11HgND8uz4K+X1GXxJT1VgdLedsdzrtWJ3r29J\nIn3iE5izevF65FchiS7itBBfj0xLZrUDzb7gZ565sisp9j6/gO6bMfm0LVI9\nONF+bSn4DLtTAPCnnKXH3A7nRHaOAGzKbdchkyHIplhq4tXiazL9M+iE4+3v\nwI5zRgnBfZp+fMe1kAu4f6SQ43rlg/or0SYcy6xg9nrAkU2yFa1ISER2qk3X\nmISVE+DZOnWStDT/3Dl1ODWk+DN/kuDwX2jAYTu7cHpDAEOINY3bOu8ZbuDJ\nErVp\r\n=wwgJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClu3F709bbps/hFaa9JKpBdKScXMQAvpoqVFov/VqWWQIgCtx5qTnQZmYVXuCqei1MuKt7wGzNK8REdZidLPK2UKo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.95d46834_1544182519096_0.9322274007158005"},"_hasShrinkwrap":false},"3.5.0-alpha.d8019062":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.d8019062","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.d8019062","@crave/farmblocks-hoc-input":"^5.1.0-alpha.d8019062","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.d8019062","@crave/farmblocks-theme":"^1.7.0-alpha.d8019062","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.d8019062","dist":{"shasum":"1e70aece2a33c84a825118e7323353072ca1d21d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.d8019062.tgz","integrity":"sha512-EiBUIiByE4YxdqZwbzKG1XgeAcvE6B+C0gCIts6nguAShnNAteOi7H4oQaBQGfVorRukkC9b1T8LiDp+oDFlUg==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcDlXTCRA9TVsSAnZWagAAFlQP+wQX5m0StZfI2fASdWgE\n/mECaF71WRaPoaneRqUPcpXeAFLPdZFZs5P5RoZJ97bS4HSeMSDrMCqmPWrP\najssS6FRD0q7O8UXLOyfqFvpizC2aF1BZBgRwou3tsLcBf2RUsDqijrkupii\nYH7+K5uR6GtLXrgwMhR0847/NNysu3KjxqpRBwMJ4r+8Y7OG3t5BlIZWdihM\nULFo9r1HY2CF0lcXJQebxMvm0jEd7GItzlJSi224YGFrJ2pxc6ry8mLoYbjm\n96Nc0H5o7mn/+RvmFtejXu2Wl8Q62a6easy48iLQyb/TfCVZoeP80Q/Lvpi1\nKPt4R3tGpYvgK+a4H7e35ChJapIEDcY9LORA45X7TRS2N4ihq+FP8GesfFqI\nVporIuAc0IudTyTNGQAZ1Xd6Ws88vipGpzCxjFLDdXmDbfP6EgtINuOctW2y\n1ucAWcsC2ygkAhLTd8I7wFM6hLeJAZZ/HGubpEQkPn67pAnRvyLhc0lcD2/f\nLpZP0uRts6M91H3pxAwR9cSK55yRGOgC6Jzu1nEWtyY2sMuJbHE9iyeSb7LS\nZ7DhfkWc6ewv8edFFqEz8Jxs52/35++2DEpFf1tX/M4hS/9oi4NmYuo8csU/\nwUN+KFqxnBUsyHOcQLK2VBeARSZB59C0HJ5etlnIuhd9k/XNaLvZI9+qgPN7\nqlQF\r\n=5trw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDrpKRvsWi5wWOCfpA2FyxjmcLD7dFZUXb2Vz2c5JYnAwIgUoJfI2Jki0ZIW9Jy8j2lsy6Nuj9SHO/vmdLve/k3Qgc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.d8019062_1544443346415_0.29068712698455057"},"_hasShrinkwrap":false},"3.5.0-alpha.cf417eeb":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.cf417eeb","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.cf417eeb","@crave/farmblocks-hoc-input":"^5.1.0-alpha.cf417eeb","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.cf417eeb","@crave/farmblocks-theme":"^1.7.0-alpha.cf417eeb","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.cf417eeb","dist":{"shasum":"1dc723a045e574e24a0a68d5de5fd7e03b1257f8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.cf417eeb.tgz","integrity":"sha512-z42R/kDlDeyhApdw0KrERUSszHsk5gJ0PfzGtWoBMTr/eMWJzNMjozlgnBKhYWzvzS2/MppgVqVNP09xXa3mdA==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcDoxhCRA9TVsSAnZWagAAVCYP/AvbcR/NJgD6xHcOVAGG\n29JQqEwcAXSpUn6eqGz+ZzbFTVwKpA8KV7t+YApMqaesSpfkPtoF3UImxNsa\nwBCrmnfxFiGZ3lUJxTM4aghsb3mSe3C5uO0ktB9aqQQrxoqZX0L6BBS/PutT\nGR8Xqa2ZGf0NZKf5oAKq92zSMUk9aw5Ul6EH4ex8w98vQTu6aSLr3TB2FmO4\nUR9f43qft0t9OiBfOUHVSaP77xAXuoAXxAK6v66AU/R/retf+Uesgm9d1ccY\n1U+Vxepcwl03mO+ROYysJdAx1PNrkUkjZmrDa8qItlDWROU62DguSlOkGmsG\noHC61nTQkcVEVSILDe3DyoH0kMiWr6fFHYBFgL5vqKLCocqKBE4JZWSdO9qR\nYOKvSZi6m2rHjHmrJJ2/8jJskyx2BltN3y8BJ+nycS1tECk7/Z5qq1daWtHh\nyQE4tWZOWKYd3iYhYe+CLz1CaJIHWsg9jcnaM8hiSuGgj78BHwgYDn136g4r\nedaX5YRsMLSOiaV05pNcG7gqpKQQwnSfYZIZ+NTpD/wrINSJd9i20TFAsQEc\nXyNYQ3BHspAfp2bvhYnqKJEsBilsaasXC4DHEFtBz5W+FIaw6puD6QFE0fNW\nRaYWCx1TPXTJhA7WEW/m8XsMbMRbhkyPzpDPBJnOHaPDhDGqIJiwfMyvy4Pn\n8+xY\r\n=xvVy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG21B7Cv3ie1Ki/abRYfgw3WcmlIoxigntNCRttha+weAiBVZwtNMu/syU02zamt6ACHqVj7WSgVXy7GE92mRzibBw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.cf417eeb_1544457313016_0.44899220941810714"},"_hasShrinkwrap":false},"3.5.0-alpha.1c3402b5":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.1c3402b5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.1c3402b5","@crave/farmblocks-hoc-input":"^5.1.0-alpha.1c3402b5","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.1c3402b5","@crave/farmblocks-theme":"^1.7.0-alpha.1c3402b5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.1c3402b5","dist":{"shasum":"6598eda8c1fcaffd3422b4c60bcf23d72b9fad19","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.1c3402b5.tgz","integrity":"sha512-RDMldJ6AH9gJsqdf/21ONBADLWHtsdUoukyMQ56lUmp+NNpLgCxpYNgNsf3mcn+n97C15zwjSLDju0x5fsSRqA==","fileCount":13,"unpackedSize":59564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcDsFjCRA9TVsSAnZWagAALewP/jhs77sm+YFAGvaN9E6G\nKoOAJJ5ONq8lHZ2bKwtJtVV3UW+hEFRMUMonodqtAeqwcsy1RrHR0hDam+8+\nCJc2IJzYt5DPiFNpfqM7eHxCEn+p8NsZ9WM27Ug4wNL9oy3P6LQzDqIladh/\nMvOoQETnBA65pUjz4Fb+tZuu85TpCOWciQb9V5f4lngD4xJ5uEhfpBrGlY7z\n4kw0hdNj4XafAf/9it0bjnKJju0POBVOrxb56uIm5kHRbt0tkkVK0sZantnl\nlR3+lYNp/cU/odv7usGcfeIN98k/NaQYsRuKo1BZjI7cP4VcghZjLJZCTLy+\nbdbbtZd3smcuZ2XoMtBeUenIXpxvfoklxHLxDDgnEzA1vwQdRb2hRRZDUeyo\n8JfGSzNmRG1nX02qk+FhCGoWR4BQ2aPK0wz6Jjv6Tjcpvej43qArbnog7nX1\nbqQxU1mD1h7TQ/9jFNcAHHa3lsy/SmL/d9XVt0040Q33pFDWnsGAtpnAA1P4\nu24jjX1FUM5GS3RknybBM57h3O3gJkgnIWFFIBdPwjzXMchWJ8mRMuW/JacR\n6Pcr2OvBEo3JYIgESxujaU9V0k6PxsAQvOORv0KNxwV8kGMW/M0nR9LL9nfg\nh1BjxoDlrOk49PjF2tl3W0Rwa38fLrZcfg6mFJpXUs7Fn6GISdHH/XypeT7h\nXbrq\r\n=L3Rf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF8ST4XQiDzaaY3j0E+1qsMNpglRA8I/1YJYlzSjpR+MAiBFlGkBVIgeq0lNb9fAGE/Eej3PIzoIZZeo6tlv/V0d2w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.1c3402b5_1544470882456_0.6419566440174622"},"_hasShrinkwrap":false},"3.4.4":{"name":"@crave/farmblocks-input-text","version":"3.4.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.3","@crave/farmblocks-hoc-input":"^5.0.3","@crave/farmblocks-hoc-validation-messages":"^2.0.1","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.4","dist":{"shasum":"045335b1c7cb6f7e0524863df137358f4cb789d8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.4.tgz","integrity":"sha512-B1UElUlM0Fo5UYMBTWlYTu3aPfhLQscZBSOuk9rc35cDdA3iTC7bUqbCM3geORTPrNuukIjHdGPJfJJIynuYBA==","fileCount":13,"unpackedSize":59445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcERXdCRA9TVsSAnZWagAAzFEP/11nKR6DDNHAs+VZQOVN\nOlTrjVgjXKUS0naprACFOab3oNV8S7bszKqxrLZKZgCCUY0/OEe+rdQOhbwM\nrf475WK3HIT3czuxEQAImeaoQyxy5Jy38uAYHDlICh5iPKwLRUQS8gHLVErs\nvn+gPRhHvnFvKhL8xRrxFOUtrYoILF4p2w/wFDQSw89/+5kjwfUJEGpMViUN\nTNPfXQHLAZfPJZcwYZJzRcNjQWy/AB108Ajn5iwjkgLYJv+IjdDk7sFjh7Xj\nLDVmr3RNMdVwNz/0vOAASmdg0cULb3ww2D9muxgEPAZ0Z5KtrLTklqfdX5UJ\nHRCst19Z51bhP1ks/uObgz8u5yq1zWPH/z+AQW0XfjOjhauNCcGVIwHTTXzH\n4E3KTwfUni0bO5BVJLdjhSCNNfUFge5LKrg3huwbCb3B3ES77a0YHFdN8T/p\nHrjRKP07rnaLftteB0pCCX9RBPRpk4iGI9FWkEn/ih5Fg9TacrL+MQUA81wg\nlzXaQapcUVzw/EtPkCdqH2WWGTeZeILzERKr6xpH529u/C+txNWXk9fwOUfP\ng17BajhN/eMKxEswy49T1Sa3FdTOADni/1i2vZ2cXBkItY1GGl3qFsuIHniE\nmwFQLh10rXCWWsATLi0FOMyF3vhFKy7CnYLVAo82cPiNDGMmnkiUhnPrkgYZ\nfRLg\r\n=gRqo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGXdw4nVFS2T/xG7bpRj3GcEdUZ/zbFzLxIXRvQIRqP4AiEAvJ0kS/sPqWH/kc0ssHnhJ4GHgtmobwau1H5GIUI27g4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.4_1544623581208_0.46938827736841415"},"_hasShrinkwrap":false},"3.5.0-alpha.6a8363d5":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.6a8363d5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.6a8363d5","@crave/farmblocks-hoc-input":"^5.1.0-alpha.6a8363d5","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.6a8363d5","@crave/farmblocks-theme":"^1.7.0-alpha.6a8363d5","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.6a8363d5","dist":{"shasum":"428235ff56ddeef720d37dbe07b5eee5f134c1ab","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.6a8363d5.tgz","integrity":"sha512-LuXXAgtWysnsg4HlqSRX7vAFyq62X+gSCVFRvMjED9xNDrqROjYK4FxyrVBQJ6d+tnc+jJmhs8nDnnC+Lt4WIQ==","fileCount":13,"unpackedSize":59804,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcESaECRA9TVsSAnZWagAAB+8P/ju00kj6FnnaqaN4ekgl\ncOXqO5KhCgU7agu8KYTKZoyV9GYhEcKZ3A+Wvut93GB6OXeA+btwvTZKnu65\nJ36S5MVjPqr8k0fA1wwY/b/sxfYPat+vY/NnRg7yj9XYcm26T+UzlU86YD0j\n8W+TMCC0lbT4iGFvyjhxwTFrsev3wm8u2oCqObjYjmAO+4mzfGoAq4Arhz5A\nAd4hf+oQasS5l/YQlHwT6qurfFBBBdYP/V9yUypuRMKEf4yKcEjw/ECWme0o\nzAscvN7NJu89CBnb+9OACHloXfovjM92GHiO4PFbFiqzbDU6eloocqIhZMBO\ntyXEIVaFrHOD8kHvUMveqYOAUWzn5xENp4D1IrpKXdHwgU6kGBN8BLyQBywB\n/HbR+ABFyi7Kc5iDl+hQmYE+Yv6KxOyPbsE44XV0Zi3uLeVhStChllrMKmXL\nBwg89Ko/wZHnaxzxUL3SxbS1N4ECB1946QhEpS2qcvMK1xoLZa+xWeIsrVKc\n0nr5yjU0c+1fIKILrhqSb5Trp2K0rvS3NqVfzM8dk+Nyw6iWIM8STf91im8z\nFFnpg/dCCh7u8b4JUhkGpZ8jIsGZ/ReZBuXOQAPQ5AojiKs83oBZSX+3qBvZ\np37YiBPpPusHN6Or6ZaLL2zJNRnm5PvceGySijuCSjeTYg8RvkCQkgIXAq9j\ncaDQ\r\n=T9JI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGGSZNTzFsd/IjWF8+tg10QcRQPRWizV/1zHVF7Lfx7aAiAsWBZaeQ+zUyQGSmGE/zZ81tsy9dQWGoiFSJNpsU8Sgw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.6a8363d5_1544627844218_0.6625195271775932"},"_hasShrinkwrap":false},"3.4.5":{"name":"@crave/farmblocks-input-text","version":"3.4.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.4","@crave/farmblocks-hoc-input":"^5.0.4","@crave/farmblocks-hoc-validation-messages":"^2.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.5","dist":{"shasum":"29c5bb1949d662b31f088939e5648ad5624f460f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.5.tgz","integrity":"sha512-nraN+Sx3a3nS5b0XQJvL3fN4vm4ahbTlW2UM2vskvWzEF1uECp8eRuW0Iq9Pr/Uja15GoYVl3cwg20z9kKkHtw==","fileCount":13,"unpackedSize":59685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcET2pCRA9TVsSAnZWagAA37YP/R+EWVMweS68JOofn9DU\ncUkoTNfhVHWDELODChjnDb1K1PIdAlYFDY5uXabQ0B3Lisivmi8Zz2lmiYLj\nslnTL0Av0Y4XiluKtZmCwQwr+/CWqCkZeLfG2xvPNtlq55bBYNnoiNeu+iDG\nFX+5Jje13wbvYsHv84inTH4Ek9fQW5O3SVhH+Ejcdv4l8JN+w78lz3x7yEhW\n4sdmhNCl4oXvpwgcAR/Jkce+cIUNF6Eh8bQjZUJJpp/ALcPRJkXmEwvQTQUU\nZA01NAD4zIq4sKaud3MHkFN6r/kuypn61xnU9kzUhKX4T+5JznRy96PiCoMi\n3dp8pWYe0tfmP2T2WHbqOpTgojVdIHmoPp+Dj/D5+Nbr+2dnaj8/0cpbpO5O\nmjm22MnN3gTpfRgyvwUq77GegF9jdJRxE/UdJ5cfctPR1Rsh/HDPIjniQASH\nDiNsv3ZRi7mSr8YzkGZ0MSNHEpPzLLWaCAVktpSla6g7X4ngAkukNaLcOLOD\naq+BXUUTk+nFRfRGNgFdXdg4G0nyIJwvreMQfniAqatJ+oBrMZfBGk56om3i\nhrT0n++zyCWrw4EYxn6TaIVPcd0emkK17/+KLsUKK5J9oZmXWjAZdD5Xlz8k\nsURBkNqUl13oPXBTrUL3TWQTxuS4uppDb+kr7TvtPAUxp/MXJw8+2FjWDarB\nyoEL\r\n=lVDu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZGcYrmZkyGg8DuBlPr6ODFepw8AV5kN0Elwb8vBt8yQIhAKzjX403bMyAriVmVWI/0t/gkPLh6ncvTJh6sxQyLn9D"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.5_1544633768948_0.3513416120483501"},"_hasShrinkwrap":false},"3.5.0-alpha.b2379f6d":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.b2379f6d","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.b2379f6d","@crave/farmblocks-hoc-input":"^5.1.0-alpha.b2379f6d","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.b2379f6d","@crave/farmblocks-theme":"^1.7.0-alpha.b2379f6d","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.b2379f6d","dist":{"shasum":"6c64f364092fb23b73c229b0fe7b4ca5ad196628","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.b2379f6d.tgz","integrity":"sha512-09cqf7cV+w+itWQTdeMXfnoinxRIG7f3VOlOiO5QQZd3WVyLa9vchm35HX3AElJXPr1ygDYrveSG0/BIm51dYw==","fileCount":13,"unpackedSize":60044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcEmZ1CRA9TVsSAnZWagAA1Z4QAIW6MPLKRElbxNua8D5t\nOmhSpKVjx3jaX37r4E4NwJ/8FR9QYHE88UteqAUBWXGlp0LD0VP0J9q4zCeL\nZXVJJ8c+kHZvt5EWZIOjCn857n8tKhjNUGGwjyZPgArjZv4B4jWeONessMnb\nuuMN0mqnbrebuTv+Sx+cMAvEFqcF12Vqy+2EBaErg+dLoi5+vhDx9NLLx/JN\n2opINj+/oloHyaVQ/R9PEtmmooYX2SoILBofcCx2T4Qe26+eesYSpCR9MEY8\nIIA/9w/kTz2j8/lNOs/7MO2HJH896HlDyYXRGtgvsR+iiRCv8CaajxlUu+A1\na9q7BMyfCMOqlDKH542RDNGoSCPJ+tjJuz1x1Cg1vQPRKlSyIvE/cGgwGHym\n2XCHIcnAmk0Iwk1vTlS5kKZIv8M6SZfqsw9T771NO7eoZ6phooUKydUOiDcY\nbB1edaqXDWYUHWorW9mWrBJDFCHiuqcphgfTKQRd+3WldnvhB/VVDGRLA5Lk\nZ9URaChNbvsD4V38BpFOcXN1Hp9pq/Bzac2tA0or5iktAt9/RQ4mASXj5qGz\nLtLPsH7HeLbXJ7KQlKo+k5Pc6fGPVDQGDgOuI1nt9dFhjM8H/ChaBiDxpRWV\nJrJ6s1xCQcm1ZANQCMX+RrdeEwXIfILgngx38Sr+2os2/dpsCbUJoiYGpMLo\ntExJ\r\n=6qCy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH/sGridraOKyxgRegBWoSSq9Z3lsy1zJ+7jOQf7FRWkAiEA22W5+Um7Zl93XDALOjC5eCTT1cCP50ZbN/ldNJeDJx0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.b2379f6d_1544709748606_0.18356255600432014"},"_hasShrinkwrap":false},"3.4.6":{"name":"@crave/farmblocks-input-text","version":"3.4.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.5","@crave/farmblocks-hoc-input":"^5.1.0","@crave/farmblocks-hoc-validation-messages":"^2.0.2","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.6","dist":{"shasum":"f3571618e34390a0ab829d5fd845cb253222e5bd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.6.tgz","integrity":"sha512-2R6fWiQTBbVS8U+RWwUk7i6PYW5ZkX7lu6JAq5ri3UOTJ6chBxwCACtPpFrecqNgQRn2f+WZSS77Fvi7If2biw==","fileCount":13,"unpackedSize":59925,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcE7mtCRA9TVsSAnZWagAAblsQAIZQhfHpkbhPawCzbEYu\n4YbAlMWCqnv0qaBZppPlp7PlxlZHUcThrjVBQKv3RNp/JPe24HvkKKydon5m\ngCB6hNrLuDGhX/gponJqdq/HLGOnpfKaYEoRCUlPzaimm/aUPKu1uPf8DRRg\nisAA7/zdZ6BFgNzcKBoTICOMtxbPHC1JC8TKeUfuabAmIT7jmdF23N7ub2La\neDFDphSqLAT+jEjlRmprPNgeb2MF/Pdo/zRCal/fll3FarojaxeeC4joaQck\nZTO/CTYPObZWLrC/AkEvrAZTVmFhdTTNouxOId67K30Buv3sDwXo2kXqRSow\n3G8EiWqCbwXEEDTMYkj961XE7R+gH+OfzI7GDiBIjvMk6oHfgLjPIgVcUwLY\ngjE08rMXx2pFYo86TMEkgrrOCRk0futJwUUSUxNcPTi/mdUIu65ZROOhP+1m\nggc95ZRR+oTbMhdJO1/UurmC1SQeH6tj2Wtj8YQ2m6pvym3LzlH6vnESjycV\nI5wUJNJPmEVofBxun34ZzTNANYKtuKgzO4T5ERwg7t6Cx4ZzYh4+tErOKPsH\nKZN9E5P9uRYV9sXlNRh69llOHgcbd3G2adz34WdvPyLF3chiTrXlAMVAhX7v\ndbQs0BXOuxGUjceu40x/d/WOwSqTt42XXBFmE3JdssqtriuIN0Wh7VS4W+Nb\nWgRp\r\n=kZEF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFMBK5AOpqRZjWCMTBVbI8LiFGuPv3R6FHFvw0lpyBrdAiEAtFTbzErygPrVuogHlRldLEekq0Ks7kefv3TAaruo2xc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.6_1544796588263_0.9947531433367607"},"_hasShrinkwrap":false},"3.5.0-alpha.ebe764b9":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.ebe764b9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.ebe764b9","@crave/farmblocks-hoc-input":"^5.2.0-alpha.ebe764b9","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.ebe764b9","@crave/farmblocks-theme":"^1.7.0-alpha.ebe764b9","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.ebe764b9","dist":{"shasum":"7702e0fe20d41c4b202336d621786c9c34f366a7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.ebe764b9.tgz","integrity":"sha512-Nn/6TE2S7JGL5jPUWtazqp2Brh5+iSJcYZjEMwSvEKAA23vITD2k6OrurZDxKbTjwVy0Wy9dR99FxTcMZIatNg==","fileCount":13,"unpackedSize":60284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcE9htCRA9TVsSAnZWagAAYwAP/0QxTgmcLawG2nVMGRLX\nNVFqdZwilIaHJ85jJeaB/b2DF8baQAAXio2gFL90ejkWiOqSKfhwGQT3Fi6r\n/useFsqQODz4s6FBECeVxWs85S07HLkb/8tePY3iBvCtsoITB4Wanl45b9td\ntbO+a9bRpMdNPb78Z2bPLYOaUZV/+maEvkF4jK7UuyxwUEUQgHw6WkLXiluH\n3ddMf/DApxWyXvt1H2Xs5I9gGd4ut+HEgG4UgVGrDPO5zZTGm+BLAiU6t4wP\n5WHMN5rvw25dqOidkuOOz/bnKjxS+zsC190g5E+n31GbrUW5OqgNOTDDRkwk\nVQxVu7JeG7tyk+jKlnsxEgzcLY8jm6EOOzk7PwhRobYcZFOYptcDT+lTDGzU\nwg+CUG9z6Qv6RJYL3Wgziwf1Dla9OdeP5DT1JJzGAY/xW7ByMZkh8IIHspgX\nN6cwzkCGa/ynw3g1QzY/issYT8FAXwiSiXcJ8q0AlioRMkW43rLLZ5S5ECrG\nLdmmIyiT3jH21cBNIDCC1Ti0BVM8vSARfeBILR5vw4GRREP5H9OGfkM9NdeP\nOUXaSg78b37flT+zIgNMx6emaooMuraG9rOUigAtAdZgz2FGOHcZButhHHjd\nkQl4mq/mmiAJngNPUl15QdzA4iy9Znwr6QR3Br0mwQ6obtM0Ykzav12Q8Tly\nSt9c\r\n=cX0N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB4vfcKE0ugWIChW8+KAPQepNm7rL8Q0ea0rV5P9ZMn9AiBoPDNuXnxOc1B3SZfKlpmI8V6hG6eieOPMVvxwFCcL1A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.ebe764b9_1544804460515_0.45486235618114224"},"_hasShrinkwrap":false},"3.5.0-alpha.d9cb31b4":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.d9cb31b4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.d9cb31b4","@crave/farmblocks-hoc-input":"^5.2.0-alpha.d9cb31b4","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.d9cb31b4","@crave/farmblocks-theme":"^1.7.0-alpha.d9cb31b4","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.d9cb31b4","dist":{"shasum":"87acd03c0a7f8663e88814ba3e064a6c6f6bb522","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.d9cb31b4.tgz","integrity":"sha512-+7bsfkBsHuwAhhVDZKBTagmj04eHxaoJmFnnHL/LVgPGqjef32dIftfppm3x7qExWfvFazRDshzI5AlUIOKmmQ==","fileCount":13,"unpackedSize":60284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcF30JCRA9TVsSAnZWagAAVd8P/05xWQpx9Rw5+ntxfCJ0\nVXAtTTLEPdgWhD/unDxSMxs86fHhhP5OtDTICxD8nl0w/q8zhvFDHF3n0Mns\n+7qYgRf4wKRTuhGb5UF3DHoLfb87clzhh5FZSDl+OBVNUAknb4+8ykU47w5q\nWBSuDwpljN8OX+Va3TSn5JrzZnnveGmSoXzDVwWmgh0XR3SmE5d0uwRhuKag\n3T4//s53KhR7Y9zqEbs2ZofDWhIjgOv5onuRHr92eGBO1LKPK2Fm1x7bqUAL\nWZ9IVzCZAmr/brlvRP5+g1YZpkinSSD/u6O6R/5QisKojIff7EkIVEJ5OqNK\n6LT6K91kb/3LHCwjQ6cAIoOhs7SFHbkBtMExPDpgHGZbJXguhnWnyEWX7yLw\nXP7Mxth7gv3qRCF4ZXYVZIiwDkqmThp43Iw5xChbgNwA8Ih1FZLsyKbcOPDq\nLrRd9+30eThJCyjdsyNXQ54BRMEgE/mv6fC2coAeWzU+a3ImJgirGlIa3jRS\nVemyxLrX6Qs/DVhjGY+5EjvQtVvgpkE1fPYGiM0Ht/8PlMYC9BG5vSZUYhlM\nRfqegzsrFKaHwV7C2w1wirKHMeKWG55EO0UAwls2YkGcrMj3LBYILXMV7T0b\n+HB6YeaovScrOmnQ/CM9283QwTTVAPt0h69tixFjWjSAaTe+Dv4A/6YUM4aW\n0+Ui\r\n=bVb9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAL7ghbArpnW9mFhjIuLtW451zHjZZFAXbCMchjD+1Z/AiAcO639kFReXGi/5F95zgkXdNYIO3WB/eK/O8sUb8H8kQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.d9cb31b4_1545043208311_0.7014956655831044"},"_hasShrinkwrap":false},"3.4.7":{"name":"@crave/farmblocks-input-text","version":"3.4.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.6","@crave/farmblocks-hoc-input":"^5.1.1","@crave/farmblocks-hoc-validation-messages":"^2.0.3","@crave/farmblocks-theme":"^1.6.0","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.7","dist":{"shasum":"f23dd2d76240181faaf8ef5a9a2dffb633a98687","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.7.tgz","integrity":"sha512-cW8HkXWI7m1o3p1Ks1nzwwRtdbxRYGXxE68J+DNH5uAk/alYhqjUJAFiwPi4DHeChSeofPLZ7UEtyDG8fs7l4w==","fileCount":13,"unpackedSize":60165,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcF/ECCRA9TVsSAnZWagAA55YP/RJocof35mv1Wgl3Xcdv\nNmdYEQNeIO+ar5alH5mZyLClItqornCFi/7wHzxUZ5pi6OOXBBp6RqQicb0a\nriThUPPx/DfErO28pJT1kTZ3Q9aqdH+tzU8bUf0FUbDIH5dwJyENLQGQCwVH\nAImyiqcmHDoEdfZJnP/JOToPWZzwduwvBDwZWNoeYJ3MtdusNvPREDAWew1O\ncdMI+QKTvMEsHfr9PnnB0UkYds2kvJibAj0xH0nWbWs3uGRucw3KKX3RZG8A\np/fNniYfeNlWZCjHYnoobpm1YGyVXTehjLMyt0/G5a1NicNjnoInAkNtQ7FH\n4M4c197hjGX8QF41vr26yJqcACzeRmY5utLZaAH2Hwzn7qfxAH86Cgs3IPZl\nctyljmFu4qMtGFSlKzI5k7f6kQD/NFRc7kv1Eox1e7ia2e59n3iUV7swxoE1\n3yNW3zmyaEB871moqXIJ3JrSQ4j4lekdOBpObjBIgV2Pp3+VTeUersRsac5s\niM1vLuAVhiOwn6o170cQgkkI29iE8LoMeQ0z9ScyyNn1p+GQCVUl5PXidiDC\n6TwSiAL/8G2EwNlCBwjVTFp2pSxQEzxdeLG6LnnCPvyZp+G+uYSSq80jyeZk\nMr71f7wE91Ea9Af8O71Ps4o5XhvvCVjds3ofQf5Rj8nwmxnF93auMsy8SeVQ\nq+8c\r\n=aON5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHZyXDHLqChprI1ViMeedwitjMs5j8vze9ciN1Oj6UgsAiEA/6sXZljMK6Q36Zfrt871EAVWePsE5buMzs1gFxJuxyo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.7_1545072897517_0.5429808051181841"},"_hasShrinkwrap":false},"3.5.0-alpha.09169fcc":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.09169fcc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.09169fcc","@crave/farmblocks-hoc-input":"^5.2.0-alpha.09169fcc","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.09169fcc","@crave/farmblocks-theme":"^1.7.0-alpha.09169fcc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.09169fcc","dist":{"shasum":"e519b88febbbd99636c5e2925db4005e6a6277a6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.09169fcc.tgz","integrity":"sha512-jk7a96eG7jAqsujkRdJ2rUeoL+7xBHb4IhlOUmsr91LNvShK2I3qbQmW4wTehO843akKvFXNzAybztbA3urS/w==","fileCount":13,"unpackedSize":60488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGD5hCRA9TVsSAnZWagAAQacQAIw9AZfX0t7ywisAQUkR\n+k1VdxSSRB16wdfPcNO1UB3GmH9Nof3+AmViNlnIDwRDI7z5X2u+xtWVQZ5I\nunWNbcK7bFjRsvJw1weC8ilikEz9AapZFdEvneUjfoNEjFsDs7sP7lCkP+cr\nbbX6G6W0+wI8awfObJfs4/QgncHEdUagqZalU/ThOD+FlvI6O2/8ehGNmod9\n7WRdmW+16OHhIGuazKH+a7aoBYejsamCtNhwHCvm59qSJbjQY0zwjPRmGeg9\n2JQCHcNRLSUhf7sKFNLYVe/cRzv8YE4VZ9QmWkQO4Wrh2BgwhJZGFdtvbP4g\nfF6blBybKP2QakOLcHYrlmLbJq0/rTavNs4fju6vmaalsBnAHnrDMWsjM2Ph\nM0i9QkWd1eUHRgCXGjcbiZF2bgIQzkR9gyVmCOf2d/X9ZHKNtp0ebrrV0hc/\n8dMU7+hPnyAGhySYvlvIKbQZT7P7d5pKuCpBGrp3LZK2IKGqoJJHB9ZJOTx+\n9ik0eVutWAhAvn/O9Wb/eTRBgbsQNOKJB+abfYSyILlJREeqb/96dcH1xPXk\n8+6/QIhgyNcaX8OsM16OXfKDuFz1jSZph18HT3UnNJqZS+WgR0CgiPbNK8xx\n/vaC/3SlPNcKa5NK1W4tRdQbITKRaiIS0r1S6lsvXWHMaWXbGVP12kmBQRD9\nEih5\r\n=3QxE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZ3qsHu+fVnLkEUuxcRrJ9aDzN/SZl7fK5u5xclyHQqAIhANY8EQrv7iIWOjKM/WoO9mWaWZuGk85kM4YHCq6B6MXY"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.09169fcc_1545092705158_0.5883956166225166"},"_hasShrinkwrap":false},"3.5.0-alpha.a3d90946":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.a3d90946","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.a3d90946","@crave/farmblocks-hoc-input":"^5.2.0-alpha.a3d90946","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.a3d90946","@crave/farmblocks-theme":"^1.7.0-alpha.a3d90946","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.a3d90946","dist":{"shasum":"b4b0d513c8540be3b5d94a5f762641e5b62b95fc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.a3d90946.tgz","integrity":"sha512-7cz0tHe3Fsb3ki5HRrKHzrq8fS5otwBxGTkfdfWTtJLmC0JDb/4k9frcp4kYp9Z/yoZc3IfAYJcQiyjZmoBf6w==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGOfVCRA9TVsSAnZWagAAwQkP/AhScKOVxXeMw/k/HxFZ\nwBwmwpJTMB6poDNvBB9MojKBxG4C7NysDk+GPJUwpzRhrZiSHqf1FX9x98aw\nyfu0IZJOa//nNqrE53ICnk+hYyRHE+mVx1sBQWUE3lQoM31vZA/JJAaiFI8O\nJukyODSTW5ZHIhmLISI31L6nsA1uY+geRfH1Q+AC8dtcgVATtpBuHMuw4Vl/\n29LabCVyb2egli6tip2L1YqGU2HbbbWIzhEwAE9yolxn4JSBe1cfNyLgaTWz\n30W0XYTMg8dc6N0V+cxxoV/+bvu73wVyfiS9lJk01TSLCH8abU/13tlze/rE\nsizCYHgSUFJrkFo2i8aYsnGVusl+uL3RIyCytgvp38z8Nd3+NMcx/egRH7Bu\nZN4gu7iel3tCER8nz9iwlnkIOS5sbyEO2xqPgywyvj1gX7fUsxPxePAn7YM1\nrFuQuzXKIbHfFC3VlZj8hBKcDb7WMHUkRbPuOrfxp1Zja3Pztm+ahtwxMwfz\n2M2Donjw2Sq10X6dI7s9AoSHx6ngAIFDL03p+Yk0/Dbm1ZidHxNlY7I+25nw\nIEXJ8iYqZRyoLJJAF3xtqPdHlLrLVGz4TfU4FbXUSS4xsPpo+QIb3jj3Rb0J\n4HUds+hGDbYj13Gazsgtt9rYOTNRwkcwxIRcK3dnAXQ5a8qfTydz8busxvpR\nkPAB\r\n=AeU8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQWz6fmuOhdIvI6nWg2SSoFX4SRnz8UTIEVO0aYnArhgIhAIVmW24z6PpFEQikBIqNtZJKsXk7wNRp1TDsnonAr4N6"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.a3d90946_1545136084703_0.46467783872786095"},"_hasShrinkwrap":false},"3.5.0-alpha.2496656c":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.2496656c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.2496656c","@crave/farmblocks-hoc-input":"^5.2.0-alpha.2496656c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.2496656c","@crave/farmblocks-theme":"^1.7.0-alpha.2496656c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.2496656c","dist":{"shasum":"c86b6a5f492f496c3d8127a114b199beeebce4cf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.2496656c.tgz","integrity":"sha512-HwL0DDJNblH+V4UmltZ+Dy2u8hp6m8snTFKKPrNlRbcfjHVID41cJuWUrcz4P86mc07neF8Jus8uW05pJPvgUQ==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGTefCRA9TVsSAnZWagAA+KYP/iB9FBOl33eD61L8+56Z\n40MoC7gRI0s7d8b/bGfv2y1qJfeJLgloZGQ+Dy7ZGWIOJ5F05wapaD6k2XWq\nWMxfjQH+JIWh6UvbQhnT4fXK3+ja9KMC3eX27qgvM6KeyZrolRK0xM4g6tw2\nO0PGIQElfGCe4h/UXeCb+CeiuNK5z9bnxIgE+WuskzEOVOMrqRXf6uv+JRdY\nXZgaS4eaUFoxIVChqHW8+dQWO7m1SJjIhiBT5jibUKc0kh+8sKSAwxA75Fsw\njctNdqbjeQuBASyuqIlMrugHSXGxD4fZylCqk+iCr1BVByz9rfytlBHgB6JF\ntas9acKVvfHAuPCkO60bL5Fl+czLaL+yDoWhdcOWNgwgIB6x6K4ayKvQfmBf\nhtKQL4C8I9K9fhFGzYjZPcj1AYczjHFTyFsGRwIElBIaNIb3d3uIqY+4uCMa\nl0oMeJEsvXLhc+6VxlOTI+m7OX+So4RtK9TjEj+MUQR6p6w1NFmvnteXRBQi\nvQAcOcjQvsOTDYKuTqkG+wDvOQjjKNmY7/M9RJRzjXJcOIJIKmxh2sX/jmBx\nukIts4i3DaZDfJelVrk+PyNRJiDjAnWDNtE/1PozW40zBNG4X3ECr0eCfbfP\nxO2M3Y8UvtFDZVZ5cudYnpe1X/YmcIwIlcwf+/41Ac7cHgdExny3V2x1RaGF\nVAWO\r\n=v3a3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICBrHVKf3HzOD/2n2ttfN2F2pVFJ1fB3JyZLuOAe0xQCAiEAybaurQqktxz2+0e8Qfyn8ob0ZRtlVYCcrli5J9jJiVk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.2496656c_1545156511118_0.3881904655546409"},"_hasShrinkwrap":false},"3.5.0-alpha.8a98f83c":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.8a98f83c","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.8a98f83c","@crave/farmblocks-hoc-input":"^5.2.0-alpha.8a98f83c","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.8a98f83c","@crave/farmblocks-theme":"^1.7.0-alpha.8a98f83c","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.8a98f83c","dist":{"shasum":"af43f62ceadf8f8cc91071a69004119557a13ef5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.8a98f83c.tgz","integrity":"sha512-tTAbjKcQVLGpsEiol1dEckmVRPtPWMpVNbPqP984JJPMvsBmCAL0D7tabsWDIGhagF5S0beDO2EVeP0kO3tG4Q==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGnHjCRA9TVsSAnZWagAAvswP/0EFjmeOKBHpwAokCCzz\nhGwJLUU5NsjZTyNGCbk2j1wmx/lYUhZBvUD0W0ET217jLUoLMqctZDPrKTRg\nXJ4vKb/QRuVl7bvD7XQ4zwu7HjoSkzjlE1FWFjs+eKpT7iMH4v0NiZ2mdihE\nsY+HIPl3H8ZtjfRZ8D+taho5bBsVf38pApY/5d8te8L2UfCjDaOoK4aBw9Lu\nnSmGg9wjHrCned9H/LWB9eC2VBKNQUU46eJ8uC5Nft9tGFsv+dhaaagtLsKp\nVoZXDdgTawI4ANPx10i62pzfTTYlpBl/IyluujysXHPHDE93o+9ShnA3TMy+\nJGsWZhWjWbYicOPypNnYH7vGeballSMXzqs3Ax7EMtqDajkoQrPszjKajJi4\nPL7GWgAlQPjDcLeP8iHHsauJsNaJz0+ANEPW2ym28hSOnQiUsBXt32eCLcgW\nnJxhwHWMMqF8w+QAd29Si0Q77wLB1PmK+uNJBfTgxH2Ml4Y6sFRi2wQazWqp\nbNqp5mVqhub/aqYHlGLTidMj7GQ0R1Yo62UntCjjb1evR+FJo0Kgz+0aa4bN\nryn7x+kqwcxQETJKWYyGqmaXA58g7ZVX9szy7DDrBJuwHJT8Pbn8Nk1SVO45\n7yuZeOGKvXwr4siugdSOStkP0Y5VvGFrJrRedlt3pcgiIJ7lTfoq+S89Pq3p\nzplI\r\n=y5vO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBayDPPKXyz9/pG142A6JiRbc0+FGf9DMda86J4gonmMAiBtDMwNBCzKvP+L349g909e0Bh7fYQz/Va8o8h79/dSlg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.8a98f83c_1545236962536_0.12723776806325549"},"_hasShrinkwrap":false},"3.5.0-alpha.7325588e":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.7325588e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.7325588e","@crave/farmblocks-hoc-input":"^5.2.0-alpha.7325588e","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.7325588e","@crave/farmblocks-theme":"^1.7.0-alpha.7325588e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.7325588e","dist":{"shasum":"3f47c6f7307c7561cd3e0d6f7fbbf0638b73d49a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.7325588e.tgz","integrity":"sha512-U7MNggAak/M5Bzi5Tb9TQAiSNREQnCXDhN+zop+ylrckGhlQLGDDDRb2KnYh/S13c6ATPDdp5Lvo/M0xcdDcrg==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGw21CRA9TVsSAnZWagAAYNEP/1w0DIMS7q4Oms4pQiok\n4DcqzdxGEFVQwydHonNGGchnrcc2BJROHCCEk34NipnqPAKMlzGqFOPNZpVd\nMPaPfzpEGy6qmLhu9F5lbUjsq/3V0U8Z8DWa4f5PEhaLudY1LEeR6tVdkoxX\nzg0L2G9vW3K9V+uP0nApJ9NRr+CNWKqbAjY9w4ZTmZVuNBx2/xoPiuCQODiv\nKOZAngiEqgxI1so8SIYY30LOLIjQp+dJqIf5rgGfWxDUoioENYYk3cN1O0ba\nImeBHSXysjxV+BiMwqklLCo7VOO0oXSA0XecXZhds6tGdvZfTVtK3T21OKxk\n0PUbpuzLJ779v+xJ4Z1tiMT3GGdLoe7LDrTddql2ApjjVy+pQFRBrAntqKiq\nCJHInGZpgYXUPkWhpjkajrXgg0Z6880H8vQXENPcLanwGj80DVU2u+P7whff\n6USSRO9n5vvTdIyIOe9cz9bOgFKwoGbOYoX7p6NRgIIsgnDL0pxgXFi67t4i\nRqE381eBmMh/5Gz4GaCO5iayjtQ7PhDkCBEdjvXqnRMpsPk7U1UOKXa8cWeb\npQuJfhnD3OLTwx/jopmMcgNhi4xQXdbAsBuSplEUuvqo/eV/xnqDGbzB3foK\nJtlzFFPZmQQvAIO3nw+LaYOZDlT/Nui6gtaod82e/WxgxrMZnfQjwdzGWRA+\nhNdg\r\n=l0L1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFgFjLo/p2MzwVpqN824qBqGjmTVlcE+W5FOjJYQ2QBuAiEAseBiVStpZFgp44xcA/mD7YG5lfgIRP/B2XzGrAcF4Og="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.7325588e_1545276852782_0.6870377781958195"},"_hasShrinkwrap":false},"3.5.0-alpha.4a16a3c2":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.4a16a3c2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.4a16a3c2","@crave/farmblocks-hoc-input":"^5.2.0-alpha.4a16a3c2","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.4a16a3c2","@crave/farmblocks-theme":"^1.7.0-alpha.4a16a3c2","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.4a16a3c2","dist":{"shasum":"e9cca5e2f112d8d6313e9190d0e65add49895347","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.4a16a3c2.tgz","integrity":"sha512-9prpNtBLDlaiDfPelzGAimFL87CIZF5T9rD053PQIJVEkQvLPiSNSUm6PpQnBetmrDvBhmOINwhjuNeuWktzRQ==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcG7k1CRA9TVsSAnZWagAA+H0P/jXdyOviSNA/9VijunCy\nIYAwwjof1Ul+ZEv2ORHfKH+NL0sD17BX5WppH+dY8lQQXrluH8mbqWYuON/d\nTpnuOCj6Yt+Fd5bGJTSZ6jRb9btI7wEsKjW7KpKF2wRGt9w9rS4sYxcwJK7m\n/PdITlnrkrQ3yG7uV+5GsUcgasUm5dGuNKgyZ6HG0k0TCUOOpUG0LrSZ+6tV\n6jEG9rWzEeKbxEsCNPCDRUB+iFMJEVhQJSJI8qWQ2P+6pe0wLj/wemP34iwU\nwKUYmkAgEK8CFT1aXHJYwI7vp/bmrBaAYW2dqQMBh6asD85ZHFinLIgb72nh\nYP9jAv6Pl7g82bpAzEmqBnmHfVMCrrFpQRJ3KYGyM7VE+H7wb49YDp/aFlna\nbFjx2R2mdBlMCz6CqVNV23KpmEr6bZT4zhvjh3cAnlKiFbH9Udb1eMF5hpRy\nqKbqnzUmexHGH+UjDIqImCrXxThN9HD5ELvluVjLk+MDfYjM7OP2ovrCzq4S\nReaF1aRuuzAcog3DAKI3KAB91F3YJVCqYBPfV46Y7EuHviv37iVitYfoFAK6\n0EvVCw0UAJed09ZfCD+58bRc+koCUIqsQsfFNZTLgE91OqE1sCbpXpwuHxl2\njuHoAfr+I4vBNXRN5saXiqYckDUtsJJp4KCw4h9v9JgpCp0kbVvzEH9jqRR8\neKi2\r\n=SA8Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIn5KXGv7W73F3Oo2LT6pgvyBWEC9uaXXUCGYHXR6fFQIhAPOhJIRNYC2cIBvUB87ByKSDwQmashyNar8bbs4sJ9mP"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.4a16a3c2_1545320756620_0.3372049307506362"},"_hasShrinkwrap":false},"3.5.0-alpha.b4f9d325":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.b4f9d325","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.b4f9d325","@crave/farmblocks-hoc-input":"^5.2.0-alpha.b4f9d325","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.b4f9d325","@crave/farmblocks-theme":"^1.7.0-alpha.b4f9d325","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.b4f9d325","dist":{"shasum":"1d0da2ec7e37770487f7e9f07487c91f22389e45","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.b4f9d325.tgz","integrity":"sha512-D+PHmejQ0s9o/RZw6rA+1c29dsZIZGU3DIzO7yoDCPSWh4pK59/rwYdER09y/7oc+/nKfWII9pc32co4M8eSjQ==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcI21pCRA9TVsSAnZWagAAmI0P/j2thPMRJFQHIW5/oUg1\n4zSkj0WR9D2acynxa71+U+RzehbOD1hQhghZDk3JpTh/FyS9bBxb2dDxCibH\nS35M9z3KMhy8CcPm9q9H2AFCOfaxqG44Xzhz/pCBq92HDeNL1/FuRmQOwXMu\nBJaiAwg1aYmg014ug8X0BfD20ikmuQcYC9uNGnwGPHFg8avzLZZYeJ/DIihV\nKHmbalVxfFud5wvI89HLxVq8upg2z/9PQ43Ip0XfVc6E2N6xtmji4v/kyEIZ\n7lxFxXZPcqqoIJqbQmq4YG4lMgOrpH+FhQ1am0Cn+w33KwycfgxvYZC91agR\nVj+sAsj0Ys/gVZywD3jaka1u139qhpsHPGzs8ktA6zM+LIzF5d0Mi3ZaU3dJ\nuqxGry1Rwd/8VdJzH1Zvd9sdydqERu4lPj6RNuIKutyYfdDJcusv96UwhUFS\nekx6rPsmhoYGQlbf2CDZihgjKTYwWu9vspOJC8EWrVeYcXBzCJocGKNiMujx\nKudJ+1eMPAFjcD6W0mkLVkXtkzkTAZPhynMcZd2VZWS5tc8/wjLA5nGgJc0l\nM52yI6rXDFC4Vml1o7n5UUMHnyEsY56VRqD0R49Ct1znfZt/ezQ1FsKjqIxp\nUJNM5L4wxhhOZZtblLzspvSNnT1l15100qXIhlVmLsvZ3CthY5xFQviFw4s2\nZzDJ\r\n=F53M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCIElsTgwullf/2NNJl2ph2gl1Kv4llxdZ9f2Z6Dh4UaoUAh8zE3QfgRpbIu6MrvKR7NJna9EX5PEP6yt8/qlqDyHU"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.b4f9d325_1545825640733_0.7158818293338289"},"_hasShrinkwrap":false},"3.5.0-alpha.7c5cc223":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.7c5cc223","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.7c5cc223","@crave/farmblocks-hoc-input":"^5.2.0-alpha.7c5cc223","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.7c5cc223","@crave/farmblocks-theme":"^1.7.0-alpha.7c5cc223","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.7c5cc223","dist":{"shasum":"923510aed0929cbbfdcfca52587b92a2e60d6183","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.7c5cc223.tgz","integrity":"sha512-yv2QlyAdKzBnzp6s50tYaBmVKPo9qk3jZq331g9aNSsQgsrOTbGJoWgA/0M6GmkwN43Z/6PeiCiJ5Whsg841sg==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcI4GBCRA9TVsSAnZWagAAns0P/1DeYQzIGC8r/yDgQwOs\na90Tm2rYxNQZqYlQnGV1/5LkINTwkKP82FtbcFGTLHrKTDg7cQwtcNcKZ5Yl\nbokwdDKAaTp4UvoY7y55Fo/wKnJv9e83lX+zq0DXRaUY3k0sp9eQPXd2Fk6k\n5oqTn9G+AvOU9Lv7pDAcblO8+4CY4TtWpBHQueqx2tRJ32gMHqnIG0PfV5ut\nfEnva48le75g1G7X3BubnFo2zShAyJu0bqwJUkUDiKO46zmOaySVAZUIgRMK\n6IOkzDowwMAvdgNWBsmkW83ShoGWDu1r5gDa5KHQhYOSvHwWEMyIxV7KwC7X\nwr99ca9c8C7MlKvhd0EpU/x35qGTs3kG/6u3Sw9z6u/tH61WYoVvBmwSpqYW\nl++Mn3onRuSySq45MnpC8JklZyllg4Mva54QpUjl/cmDMS895qd9d7DxBVKF\nok1uWY7vDm5bCPcOjMQlA7ozleKjzRaa1gsE/Asfc/Tbkt0mav686qIMjvZO\n0Mwa4CkGVEkdtSlfSnTi+wm5ErIAX7MPLpVx2SvQ4E+RvCthlCljknmCZ/Bo\nOgSG4wGTnt+t+czNa7le0lv8J2OpJ72bEu5LLkxwZC7tmkjenEoPG7HD7Xa0\nbdCjIq88xRRVdi4eDxyItT3sWyrUMJ8UMbiRo4Z3U0fa1Iz1F0OBBr6LcR44\nxZlc\r\n=mZ60\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgRRRob/lRqh95EOtxOPU6o7SInkI5Jsrbjoh8DsgQMwIgaXVK1l09AGvI9qkRk+IilfupE9CVuiG8pm7zP7z4+jQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.7c5cc223_1545830784904_0.8117183935459296"},"_hasShrinkwrap":false},"3.5.0-alpha.198f2331":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.198f2331","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.198f2331","@crave/farmblocks-hoc-input":"^5.2.0-alpha.198f2331","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.198f2331","@crave/farmblocks-theme":"^1.7.0-alpha.198f2331","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.198f2331","dist":{"shasum":"743b90640c76235a3b9c3ba902590d818d9f81a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.198f2331.tgz","integrity":"sha512-NVK1P2FUsp9TP6HQQ4TtzoBYO9FknizaDEgtWY/9yJS+Mi4lmFUqpkOVil856FpcnC4x6TjNuu8XUGmfp1h/Hg==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcJM71CRA9TVsSAnZWagAAhyoP/1H7pVmfyt/2WhtsZLyc\nztd3nwzMHV37w9DWB0iZrGyH/ZAmDJOHCi2ekxTnMO0v4ClWaF7G1cBzaI4u\nYknmfFUnPzqR/vYdUt1qtWQmS6ae/b4hCkK7MV3UpAZxPstLHPr4i6nlb0oB\nll69Er0uFkYjazau0sWlmB48s/taDm3fC5+qUpdwRV6nhSDHbqxFNqUsHruV\nO3vA6H11smKK+41wB5Q8lQJaFb5sRrnf6IGPOkJtZkTEiLgNnZWKcehr321/\nfAyYfuaUxxrb/+j/w67FfUSPWIHBu9gAOrrL3uKylJfdK5OYQGyGfetEtnhP\ncSVlxOExJo2SBQ2bG94iH4u0Hyibn2S1FRIMNs2yvjuWqWZl0inKWrNyh9qp\ntk4RvDneEEC7xQnbb9lIzW19AK2GtfD1znMdBpf9UTOMnT1e/Sc/JODdz0Ki\nd7rCKyHZkcJGu23KXAgGtPv+NfSAoZwchNiYrRri8meDk2/q2pORDZtKe1Tx\nvdf/s9RVQ2naX/VaOgub4nP+o9o820p6mBZBrUETsKRqO0B6tMRC7iaATc17\n1txODtKcDkUmqvMrB6i5f1ebqVwqZu7jutjmLp4l9FKHlCNZcssKLPNUAHYA\n2/UOsEf3F1DoJS7RkaSIQ9nHN+Z8k8sh/pW6yh1DNWu1RnshpPb8wQnxG7kR\nuRwL\r\n=mUE3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD4E0QGlhA/txOqpI7WNxLNPamGTQ7hIsmrYw+8dxR2igIgUCC1E2kbMtiVJfSLogE6O1LZg+IysuluY5rZW80FrdM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.198f2331_1545916148969_0.44640925417536015"},"_hasShrinkwrap":false},"3.5.0-alpha.20dc0302":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.20dc0302","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.20dc0302","@crave/farmblocks-hoc-input":"^5.2.0-alpha.20dc0302","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.20dc0302","@crave/farmblocks-theme":"^1.7.0-alpha.20dc0302","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.20dc0302","dist":{"shasum":"c0a5015ae1cd9473a28b35cac6c1e0ea66436440","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.20dc0302.tgz","integrity":"sha512-pmZtD1IL0Atz/J/jvV/H3QdI/R8m02rK2o07BHvZwgLkXmyhOuaD6jz23r7m5Nv+fZsXMIEWxmg/YIqxVcrG9w==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcJN3/CRA9TVsSAnZWagAAGpYQAIibhp4+LcemmSiytB++\n0LIZ/e5QM+Cm6D+iT0swQ5YMRjwR7NIE+TezceHcW5SySVUINjddT/arl7Hx\nhYPs2xRWtdQfyT4tULVGViBZWyZ28FqwXGcZZKB4Xzkily3KYlMO2VImlozQ\nq5ICjNhi7JGFo4f/7Oa4HkatBxS6ttP5vZjBU5SUu9dg08HelCgKuiBZel/g\nZJS/aETcw7ZxF/wEVzA/9V3M84Bk4TanGU/5Y7Cv03XUBradD+EdCKBiCMJa\n/QvLpQaVlhqlOaP663AfYA+eLtqyGBzDglNC0fi9OReefgPrb9+ngBn6UEQV\nAw6N1axHj3ioOoI3UxUJhq29r0Xjuycsh9tkwzlXvO6uah+j5TYQJW4vQnaQ\nB7aqBFMoPBSNW6mA6UM5ET1CL58ZvMFLy0bEKIMqwDoVyec5gSswBcWSVT5Y\nXFw7v9xqECMzzNGwSWbJIAZSP1MpXYzfyKnMcYSy65/pwUa+h8NeVcnpZtx5\n0wnA2MyMIxPb+UeNgLdkwCAfbJr0Lzz3zlgY9xiVs4mcDdaT9F2Q68+jSe41\n5LxtlA8b+U0U7MZL/tIB0jpFA5JCS094nwIgbVpgxHbcMFqb4mZ1dbMRloHL\nk3VfdBe8BXWic8f4nRffMKvmCb1B7aFHM8CK1Wcfs0gApU5Y6aeCQ7NRhHI8\nL4Xa\r\n=1j6K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCcHD8Quf9BYsEyKaQaV+WKt97wARHH3/8qBVA0BK8DCQIhAK/RYs2ig/5LczkgENWBgu2ID0pQ6tS18+/TOFmyJbiZ"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.20dc0302_1545919998610_0.35471159901766414"},"_hasShrinkwrap":false},"3.5.0-alpha.5ec96798":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.5ec96798","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.5ec96798","@crave/farmblocks-hoc-input":"^5.2.0-alpha.5ec96798","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.5ec96798","@crave/farmblocks-theme":"^1.7.0-alpha.5ec96798","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.5ec96798","dist":{"shasum":"385bc21816c9871cd2c350b7ea8b006054fc087d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.5ec96798.tgz","integrity":"sha512-Y49M+iD68+mGbEw68NcXkZ1Z0wtc1DsAu8bhGtDxtJTbakoiCyZ9DlsUlqpPoMT85qcwAphRVwvXRL4m67vqzg==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcJdtcCRA9TVsSAnZWagAAqj0P/0/YTbQELt9fbJqu08Yv\nA8u8w6+9Jh0BQ6xDZkrgQuYa/pazfIOjabAXJCoUZtZDdoGY+K6Wleyl/4N6\nejJ7y0CjtWfyIQLFujn0hamaY0LTNV1kuy73Hr5ZFcOObw01s8jaOjqlPvix\nJ9dlhJGqTqhsfQo9uAEIiK5xQvPua63lpP3KUDgHw1BcPK/0+mmENUR+gwPJ\nLalVKRzqoe9QcgHw6AtNz0f/vhKZNqWufQcpb1msc/bEISYPGnb4Lp2cOH2Q\nQfkzGVKlMikAoGUnFmShP536txaPdVirnO8fuEwZnMZ1Fb70o75065JuWA9I\nIrVTqEZbse/EmzUPSC5dkko3tKb8svxy0RW8oLzyYrM4ITZ6ajIxzVOqo50v\nGfCRDIJTnTbnj7QSNqP4Cci4J+vn6oiM8XbkAej1pKq0kzF9Ee0bb6WgecVW\nNQMdZrV9J4/YCkXa9j4kdrWt76BTfFg5eh58O+L7hEQURFQ6/MPEFAxlpjgJ\n1pNnocsAk7tBsb6ur6cC7JCIJEqLPs5CPnpZo0UV9nbX+B7EI76gt+S1sYL2\n+ghQQ5wuVwd+sVm+GB+CZefHikCrjyBUJrq2zs3HAMYEw8rA5YWAeNieAdlj\n5LV27y1ifzCpXi6Moa79Vm6/L/EOwMM6kSTz26wT6LnEfwm2Fp78egtKeHvt\na5sY\r\n=Sqid\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpW5AF+fFSkmJvwjbd4xr96x/KmkvFdOvivN7E9jIGfwIhAOVhDUK2e0wdiktQ+RVC19kUfOj2w/EwHCIL0wonsXJg"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.5ec96798_1545984859730_0.7721672201073657"},"_hasShrinkwrap":false},"3.5.0-alpha.3152cff1":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.3152cff1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel src -d lib --ignore '*.test.js,*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.3152cff1","@crave/farmblocks-hoc-input":"^5.2.0-alpha.3152cff1","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.3152cff1","@crave/farmblocks-theme":"^1.7.0-alpha.3152cff1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.3152cff1","dist":{"shasum":"0fdb68d9523796901d833cce2577148af7e9f2af","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.3152cff1.tgz","integrity":"sha512-s87S16hEOmz4mRnYLkSjdQdv4Y/c/RWVaw78HmtDifuEo/QDlS98SY+vR1Zd5l55frOOc6pJn1T/b89KcQxHtw==","fileCount":13,"unpackedSize":60524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcK0f2CRA9TVsSAnZWagAAT2wQAINPHw5O8kEw+6t4BKc3\nFrrlYBZ3I56FZqpuqyZQiPgEzUn1z9IDQqv6A4yBhkP4qhWqk9ip3iHYhQ9R\ntiQHYXznw0fJqMyJ41cRCzovRzA0ANxpDnjdx0DoZp6nMmHb7ZVAI7aSGjD3\n43c+jyIrWdbN0vO1vfoLIe14fnQ3wy8fV9wJpWzYOL1p/XbvbK4lNq/s6sSH\nDsS91pqIGS2iACW8jg3U6+hB/R/7csaEXOEakIQwxK1DrWVLSRic74OMHMb4\niMhDg/FCEad5QrIDNkeetYcX+4i0cawtkkv0cfQrw6KbAj6lsgTgEofUAvYm\nnkxV28xc5G7LV+29Kx6gTjZtcx3iIz47drK/E5kx29cML2qvI57xKLneIrb5\nnU9lKmdwHWS9YJNSHmhTpQAUInHzHT72SYx+KMfXi+ohfcwAg/tO0qXYrGdT\n8qUwsmxNbgkJckpND5yg9ZSDjIb7Cfv5nrhmPlWhIOekUi8tT+FBlEDlybck\np+9+WjLlF6Qzys9GagYGi72qt/BJ70iwbaS1Kod6iU4pKqJ9Y5Skyzy0e/az\nDSncmedQzxIAQPcHvl3TPoe52SJyDXzY9EyPwQyD/MtdJToKSyF+ALPGTRly\nBTtlx8giwXi3rEMyWIoukkQMKGIKfzHdUB0BU7l4I4uMYBZdChuelDF4+PEi\nlA3Q\r\n=JvCG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICRzj/+VuM2ktkp1uQAKKby5yz1JXiuoGEkWm6Rkki92AiADo5dX6bvnmbmsNbxK0CpUUjlnNuRL2EzLkVUeT6B6vg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.3152cff1_1546340341732_0.7711673427685926"},"_hasShrinkwrap":false},"3.5.0-alpha.140e89fc":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.140e89fc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.140e89fc","@crave/farmblocks-hoc-input":"^5.2.0-alpha.140e89fc","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.140e89fc","@crave/farmblocks-theme":"^1.7.0-alpha.140e89fc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.140e89fc","dist":{"shasum":"87ed86af20be12aca8bd7c775e5cb8409890dc94","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.140e89fc.tgz","integrity":"sha512-XxgeCAL0CEpDodxDXRVypcB216Mm+e4GtReuMzM15Di7kAeP1/JNi0CKlktYQK9tCztrwGjTtR1LabSlhpGW2A==","fileCount":13,"unpackedSize":64793,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLNRMCRA9TVsSAnZWagAAL20P/3xYQvV4xNxnqzavT3he\nCS4ZS8GzXVmkb7IRQBq7ss00WkjPhyEnHzPic5UiRbh7LtFsNAwM5/y4rWle\nVD3+H4BHGKE0TDMSpgJgKAgyvsKitzeR1TXwaevtpzC8mMnas05d2NSypgYZ\nnocOeQVaZX0b5X1cHMU4RQkro9wSu7rFB0kG5r7qAjGOg59FlBpoZKzhQ77u\nq+feCkTm0fAMm6ePw1gOgmglnChKQ8BBqfMvAHWJsP5K3vMSsLrLhxgD7DS5\ncthErXqfTuQHRKF5cNcd/yQmXws0N96fOBryJ/1Xsgf/wwOVnpJXYUR1Zvq+\n4sq8JKduB1e3kn7JYqUgJ1ho5KpCRaSJLKiEn8H5DRJbwbQYPSKGi8T/ITfD\nsxft8HLHu9MqupavhpdnSqbKUZYVTaD8BZnHtfUIddvmTiHZbvzL19/FmnaN\njcOeVIpdAqqRPtgLKNrdsYRE3WCsnaw09alDSCDnS/r5R4JXuuxMOa1BOwyv\nVqkgQ7B3ZEcUVsnR401Z/6LFwbaeIsoRzYwHAX3KUhyXaxqMK8xfZt3SxA1T\noqMP0xAd5VWi2uNSCzctUBcIbEO1lmwZzEavPlQikgDt6bCXrl3FN50UjBPi\nn9iwyKfeRko2kIONiZrLUZXatkUFkuheK27UIOWJ/QnH5oo8pq4DuaO+FAPb\nhXlY\r\n=UtSO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCwMohXsgYIUwPFdXUkS4qdjr54ySmYqWT8HBZ2GT8cVAIhANygCOMAnVBoHM3djYvT03u9lxXSj9nA4YJkBHB2ai42"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.140e89fc_1546441803655_0.8660024193132954"},"_hasShrinkwrap":false},"3.5.0-alpha.58cc129e":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.58cc129e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.58cc129e","@crave/farmblocks-hoc-input":"^5.2.0-alpha.58cc129e","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.58cc129e","@crave/farmblocks-theme":"^1.7.0-alpha.58cc129e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.58cc129e","dist":{"shasum":"2797038b06d0a9ec784e02547f0a5e82fc144b8d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.58cc129e.tgz","integrity":"sha512-bADcr7zXZSBTu6ztj1bVwH6++Pwr2Ta9b8tm/287kTAS9mFXJkZlw3h/92/r9ckPZ+QQMW0iQpUwV8sXXFiICw==","fileCount":13,"unpackedSize":64793,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLRIGCRA9TVsSAnZWagAAt1kQAIWn/Jy5ObqKDPqtpryY\n/mx7QjXRRc/8Iaqfk4CbY1bqO2+gi1BreKOUmFLnFdABPbnPcsocVoaUztFo\nFU5sNnCd61YMDwoZHSgWMwoYVRlu6ZUhTclnIAfHAdNr2Cf5SdmgWJ6Naovn\nE1Waq2Ks2svciVdD/QUFIGrAIIUY75aER+KuDOxECjG221cYivjUVY3A0pK9\nDCcgKPPToqjPKBSCLEKdhp20vkGcqwYX8sYF1/UKCzpMOPU3qfKBHRHqXM8r\nhmXX2ajSPidf8CDmhL5l9gJQ9rASnz9t+8ZuGsSBFNgpXZSS9IEebPg7qo/F\n+eEuBLPJpv01X2+Asiu8b6u1COJAwaHsI3vEZfdJl3SeifrrrIBX1rhs/kLK\nBjVjY2T+YbozawGwSsoNlA2iOBs2/CBbf0C89CXZQkn04hLo6v5VJ4oDMnBI\n74t+Bsczw+J6htar3ojUcqdzemxbjIjYp2X+0h7l0z/lFcDVYhvFxUE0x8nG\n/EQmyfbDFHDgiYMXoqCYPue+5FqH6aKNTkpa0r0UcumGYmXS/m1lYQfROnB6\nnltyR/F6yj2KDWnyfcwlOUt5XsUw2TtJGCkJe3+dofAY5X9Qcjvy6eyTPLmg\nvI4rJAO/Thex3iez/yuYeMautOzf3Ai58cLDIKv/Rp2t0B9WvlOwj+emVd2z\nN2ev\r\n=bPlk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDF+ePZk6+yyHRihLSzGWquS4Gdnj/VlPM0Y+avulC68AIhAKgsufNYyaOMSJO4Jm6NoYPKvrOuLqSxsLaruHgM2AxC"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.58cc129e_1546457605984_0.27918941690181387"},"_hasShrinkwrap":false},"3.5.0-alpha.b06c364f":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.b06c364f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.b06c364f","@crave/farmblocks-hoc-input":"^5.2.0-alpha.b06c364f","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.b06c364f","@crave/farmblocks-theme":"^1.7.0-alpha.b06c364f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.b06c364f","dist":{"shasum":"bac5db18034d95701cd0de50485cbd3efd369c4c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.b06c364f.tgz","integrity":"sha512-jbDlPUW8irhrwq7/XK6Y3maV4oqE71+E+XTijscNiw0f2IXqiRyG89Xzf+pa/HDKOoKXAK/etLugtvldM1MDwA==","fileCount":13,"unpackedSize":64793,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLflzCRA9TVsSAnZWagAAGIgP/07e+kM4BAF0N5morCBX\nwRDL8MsU42ZtOaQXASOol+eCmDT/vSm4DjYkH/LUrhfcNp/ShnonN8EYx/K3\npS/2WAUa3NWWepxj3f550PBuqQxIWtNld2g178tFagIdwM+EemwGc0CsoTPv\nCezD87XNrhlt3+x68dp2AjCoREHMHSbsiSzWq4K3R2PzmVtg1KKmcVywobI6\nqfyWXqdAL2AYB5DfvMk8+ZRCCyJCRxe9Il+Mt8FQZJQr1B88pCe103ZXXkJF\nAqx+pcMFR9pFdLBJ0ARplgJrXuUYKgc9CgJgdAeYUbSE58aPQlFq69EoJrmU\n0799TvOui+fk+jC+fbtla3xpKDxE/nROTzwI5/bHaO2Lk0+3/OME3+t+ul1f\nAvBxaALUFB1zWRTBccASxxE7uB+yqbqShtWh5LIO2rCzbSjQy8Mu+z4pUlXp\nB8mvks3l69masyOxH1bOVld4xDPVEeGm3VbTTDSJdVfXQGyK8C8k+GT4Whxe\nZOsGlJtXCk8wsfKYilOoy2D0jMure9bAg6rbx9KulcpTtAF7NYiIQkrrYO1D\nuZ5lvJslKZXkTmBPJ5XSGUtZPCKL1SGiNWPk8ji4N6WwCclWwnyoDJTDP5m3\neTLyEHy+kQ5U9fd6P4maJPjoxs5C7h3RSzmyAKWMqH+kxJVQ1qvrYhUHY0i/\nSV+g\r\n=X71h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDX78RqneikBvHqARxAHbc3kETeIpclLP4oH0C6rupl6gIgXmzUCVsXjdZF+x9GGKaxzYYWxI4puIheHtWOyL2xurQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.b06c364f_1546516850706_0.49811809724359746"},"_hasShrinkwrap":false},"3.4.8":{"name":"@crave/farmblocks-input-text","version":"3.4.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.7","@crave/farmblocks-hoc-input":"^5.1.2","@crave/farmblocks-hoc-validation-messages":"^2.0.4","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.4.8","dist":{"shasum":"ee013eb8ff6fccf51835ee7c4611d2e4f8f3c712","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.8.tgz","integrity":"sha512-56oiqgTAB6MpPPuO6h592rJgX44ruitVqv80cgcemXMEV/ClI59E7pzqkC5s99u8idFEr5kMLE+y44faO9UYVQ==","fileCount":13,"unpackedSize":64674,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLf13CRA9TVsSAnZWagAA4zMP/1MAwIe7a8njMmQg4KwI\n0MnLiCbeW7bX8yUbmdvirYiC6NU/X1LIGILCPC+K/dR/O8J7KTO5T+1OYNZH\nrcPAZF2r+3+MbPv9/VylLzPzi0iV/Z3kXY3/ZbEyV2/+GTI8fD1IgYfFb37Z\ngCrzLY0BoYvfvnBOg56X/4oFi1x1Bb7hYyh4/1+U7nM6zO+tH9Ju0xJZCtVP\nXTCEVlpmXW5Vnuln5XCIYEzvGOHHQkduz+Cpx5tjHx9yoQ846crgntDg75DC\nc1EhbINAu4gOYQYWece4XrcQ/NDov4W5R0GYVv7tkIq52+BU+kTpLvWe3NZF\n9DlQL70X2Bi1vf6Ib8mLQZwkjrPUUWbZNSpVxonn5ISzBJzalLzGluEGKfcs\norq5QzB7yZeNu8xU1QmZSxE25Kp38sLjjj8XILMxOOfFpeUfeyy5sckxQLbe\ngxhWtEnbF/WYbcyI0yOBmD/oW4X4eKeWuQSju5rXxkyfpsA3tY1N0ptgZywy\nn69UHuCHA6I+6ylP3uxFJd1j0RLpDRJI10McSKsFBqvpVqy3rPp1BZ8+xajD\nTrF2XhHG7lPRrokh4yD0QGTJv850Umi9r7HKnyYzjLxrtz5gar/n5Kgz/iEr\n1if1GmgKKzpHL+5t6280Y4b6DmAS+jKfOU4BtlFUmBf3oBNJe3z80fuznWib\nvF92\r\n=AM8i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFluMk82eEO72uy3XeNjhwFbJwIhtwz/R6F8Rlk79w7sAiEAjiJlqTPSyb6PTybU906qIJchUsMnqXpnHNlkkghLbAA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.8_1546517878398_0.3234142509803486"},"_hasShrinkwrap":false},"3.5.0-alpha.52295049":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.52295049","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.52295049","@crave/farmblocks-hoc-input":"^5.2.0-alpha.52295049","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.52295049","@crave/farmblocks-theme":"^1.7.0-alpha.52295049","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.52295049","dist":{"shasum":"ac8fe2cbafd140ee40c715b964d0cab0d68e120c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.52295049.tgz","integrity":"sha512-Vt/Sw9J8jxCRIUPIu7X5RT3raAGgLCHreB0Pi+EAHmss79BwNyZsrrj/TjSYmnESTyQwbHgtJ6eLLcXWhscNcw==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLgADCRA9TVsSAnZWagAA/fgP/2z9HQu0zFKNo+9rSPD/\nuJHIbdjz+NQn7a1wauAuPMZ0zjWUNc/MeQ/Nh+RSiBGyIpVeO2cdaw8pbPDn\n+MKmouOnajBulfjIDB1HFTqvWGSyOQkqENXLxtLtL14ZthGK+Ad1tH434kxS\nO6X3emBep4oIkckM4SNyBXMeMjb6RraqoyjEWDo/Kv3LjXW78LjC5OEJFpWT\nAzJzEXf0qMjgzSVVy/O0C8pcQ5E4wYurE5E0xC5D/tysabfylYMB564v2m7f\nQZnSsy5OughU7aR119n3R33HwbBnfHz/TLNU8QWs7V4LI0Dl+IZd6+Xnwokb\nJc6PhaFFDKzcx7RBamGDnB27TRimgZRUV9fT6Bpw0SvTY9VDNp42gnmWHbyc\nagsk3J0WpgkhS8SOR8xpce/3aBrSlet2KpJfX74e135qzmR9IYH/o4MIQ0p6\nFSQ+kQI+HIxOAre0bVa7m18WqfLRdzdNnwNnXIWdNQXuQGF/Zrkrqtmu4VPX\nhkePZXBEg5wVdQuFIapf0HjI0vhLHg+aCxRM9g651n4gNqgrfOpFyqurC8vm\nLegCACCM7EW8gxhb1AlCBZf/pF+C8Va2L/6+EmnO0PVtHr3M9E6kqrKmy51b\nOFTbsQ14nSEMjhc1zpVfd1LCecBlNezkk6drr4PmHcUrcm67tfM3VNrKHT7V\nPMlx\r\n=ZGBe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEgcbTzhjlMsfVif91XUyiOKwovEqPd/jnIA01yjP90MAiEAxI57mjvcM8BRhttCOVOauvbeIXwzxokqdWg0yc0MzIE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.52295049_1546518530942_0.5270872998887859"},"_hasShrinkwrap":false},"3.5.0-alpha.ce9dd01e":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.ce9dd01e","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.ce9dd01e","@crave/farmblocks-hoc-input":"^5.2.0-alpha.ce9dd01e","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.ce9dd01e","@crave/farmblocks-theme":"^1.7.0-alpha.ce9dd01e","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.ce9dd01e","dist":{"shasum":"c708c9973609803a6b2d888c6b98b9ce2f2f7afe","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.ce9dd01e.tgz","integrity":"sha512-F9OuPBby/3rrc/EcoO6pj4qMoOO4JJ2ryZ/adSu9q2GzZNAmJVBxu9Miy5YO8xKWY3ij6Sw90QfuLqWWNE3b0w==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLko2CRA9TVsSAnZWagAA1VsP/2ORESJaKXgq2rZe8biH\nx6UOwSbAWXsxpoZHg7YP1AQvHpnSZ+//QH2liKP4Hm1K7fudTpekzv9w++me\nRyAsgPN2uF+7pE3mrNowblY8uAJBNnRFsasK22TS8Gl2Ogik6T9WcqYvRyIv\ncNGyemGj1E12UjJ30WhBuWBZ4mMsxXQfspeCFLutnmE+khFdJmcXqoiTCjFX\nLcwSEakaEl2fn2XAkNskBlArJK0QpySpm57LQE8/oJzgs0HIIu/wHDQRRct/\n8djh1i1nlKYR8tpUmbGqh3ttcm/BsXTgOCZNQP1Sr77QnAIcd7ckrhrHMjmO\nIcbI8xDdVPNfUlpXFBaYSHcYftgUhkRS3PMRbKL5WSeU3HyD9z8MipGl+heD\n64omCM9ECsW1d5RVUUYcdcDcqa6MbbKPkv9FAqfcm8sbbq3dHZgSztDh92aQ\nM395ZPRnLiqAZeCOkYYsb1thcGUAI7n902k2JgoNXLNxGzgq98pXsKNHLXsJ\nimVFXd/DlB5BjoAl8uMU4fu2ZuJUC3RmhcAbpHiQOpJ1q5ekFwimEa1+Q4Jm\nZCP9OabySy/HkREkIRVnTFBFh7HGTh5kYrwAAY+ns9Ss5wRl+8yydxLA4ti+\ngxKwtDII2PHy+kDJ64NV8KI8C1GzvRkwWFyd01rkMJIwA6/JR8rro3QQ0JUm\nbXbW\r\n=ebxx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICicpb/oFbYVs8hPMuIrQMndUod6pAkZhwF+gBS4+Pe6AiEAzokEWU5VyJ/mX22HI4ruTpp3Wit7WFXDWgbz7dvcal8="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.ce9dd01e_1546537525938_0.6083919918455034"},"_hasShrinkwrap":false},"3.5.0-alpha.9eea1bd7":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.9eea1bd7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.9eea1bd7","@crave/farmblocks-hoc-input":"^5.2.0-alpha.9eea1bd7","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.9eea1bd7","@crave/farmblocks-theme":"^1.7.0-alpha.9eea1bd7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.9eea1bd7","dist":{"shasum":"664122a0849ec98910fe2aa5c5ee9c1b5e1c753f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.9eea1bd7.tgz","integrity":"sha512-i9yljedRmsUeSXjyRXad3hvOCBxaMSYQz6yHkWcvzyjRO1waka/PcDlYIKrgs/Y7IlTxZqQYjfkqA9+uG8llbg==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcL3FYCRA9TVsSAnZWagAAUnAP/38MtxshEnaSVRlwwWtB\noofMHB90Nv/gIGwn0q4X1JH7XfFC0/o6Qg+2Zg9jb1E5JmLzAlAN89zP8dru\nKiAO7uBRaXyItuYqm9buiyCVEuM4s6pSl1dNXWf7AhJmkU92lu0uIGBU36Yx\nVPpN7TszW6tAtULr9Ocu2QExJbUGYgYsPjDTMy6PVUtpA259MY0EYkz90Efo\nmmu+lByVVxNb0n6Vpp7oW+g4oxWh0dZ6YPSBY+t7gTHNpUcLMwdQGrin+tJf\nhb9jYfOfEra4P/Dx9xXh/isuj+P6447xFjdq1GRGkXOpHUJ98GjzfPw4bJUF\nw71R0lDtHTBgruZTnNILLeUQzdBkfRBAWNTlfAQejWxeHWjFIvaHYOlwlKrf\nY81bQGgBY3SLyQ9QGWSpZ6HZT2zUVMua+fStqhlwjp6LHFznyvqkpUJguEgk\nwIgpy5db5Pvl68GrGiHi0uVFO3ikzQjDBEEVf4uXTGzIxLiXsrAUxl52GrYl\nIEiJbqcnXhw5Mfi15mARuDGvxVf05kmOkf/k356ALtOsOnFY5cLsXcZn3yI6\ndfbq8CRVyn6Ytjrk/hWSOETe39e+45rbOAxaXI7X1KG00wFVuPgeSR1a/7qa\ng99ebrfGEmL58MoGWzpZiAD8HrPSzDAZ/PF8JuyTtX1ATiosGoLVeVQ2uoKx\nrCzu\r\n=rm0Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDABmLXj/3Dnu6bYlqLf+fMMn3Dhl8be8uTFmvRQ600oAIgDM7gzWZ7OTZugHe8XSZvcrJ6M03xgx02XBJRCuIg5mU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.9eea1bd7_1546613079984_0.5367727365239232"},"_hasShrinkwrap":false},"3.4.9-alpha.9":{"name":"@crave/farmblocks-input-text","version":"3.4.9-alpha.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.1.8-alpha.9+bf641f0e","@crave/farmblocks-hoc-input":"^5.1.2","@crave/farmblocks-hoc-validation-messages":"^2.0.4","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"bf641f0ec7171653c944b547e0cab1bbf384d9af","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.4.9-alpha.9","_nodeVersion":"10.15.0","_npmVersion":"lerna/3.8.5/node@v10.15.0+x64 (linux)","dist":{"integrity":"sha512-EuxCxmGWA8CjpfJfaDKUbmt9Ftlqf8oW1apyrbkeUi+xlFuiAE1l+m2suthzSozAsIKwrgElUrqzzC+SFEzxpQ==","shasum":"7024f72a0104f9df5487353b18565d76bed5224a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.9-alpha.9.tgz","fileCount":10,"unpackedSize":64765,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcM31lCRA9TVsSAnZWagAA4iUP/RLPnlz9rIHbZ6yNzcYi\n4Yru1n4vHL0TBy0urUPohVZxB5VyPBAk/mjT4ouJ/A89eCGxLdcqyLl/rN2i\nYmSOEpJWfgERrA2rQWopnEK/rleLaKwYDjwzmVfVjG4HKeRjpTiVPBSdGsEL\nddrlhAQvhiNbCd+W0/0ih4mm8wVZFI3HXHDCWDmSN2qf1fVFlo0PesaTiNSR\n99e22FVsG9oLEFiwCWIGOBXgPAqIdsLo3uSToUD7opVuOJ7WDjLZSW8SiX32\nVhDnQh+M3IvR+yBM45vwTFb2Bo2pz/nEb+zO/7m7XTBWO37WO2B5c+xJc9H5\nhD0gXGr2/cK1H3lSJiLU7dDPO2pvqm9f7Vbe7OtGqIqEPT896S0AaidvzRyL\nL5azVCEfSaH0bba3Y73qWL8nZEHDZDA8IjLSfqEDE3A3uzDbU//EzucYtgoM\nl4t6iY3s5tIbLPYM0NTc0AtnCLCdSaLobHoNRq9pGAwXg/cL1oineK6ojwkX\nJhiypTmLwO/urOyOWU2VsaySz0GyfAyD6YEyuEElzcAVzGtTAaeTMxlL1Xg2\nDxNeRCZ4MIRP7jrqRrkiClMasDZxDCUVawkaaVTslHyMpnDtpTIFjuoRvYVC\nYXkhVdQ86CcSzhlIGacyFpBxHPv0CqEFmXSkV5z6EAPAt6sj9+N4VzSi7i+m\nFfRd\r\n=LhT0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCftPmqRo04GalZjLQpG7CEpS4b14m5tDa4I6s0sA5FTAIhANjo12BbMwfMeEQY1o9HQMhkIeTNHhxt6GH1ksYBTeLv"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.9-alpha.9_1546878308355_0.9642278298782214"},"_hasShrinkwrap":false},"3.5.0-alpha.b56b7743":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.b56b7743","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.b56b7743","@crave/farmblocks-hoc-input":"^5.2.0-alpha.b56b7743","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.b56b7743","@crave/farmblocks-theme":"^1.7.0-alpha.b56b7743","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.b56b7743","dist":{"shasum":"9b8d048818a3c69cb4b12d16b3eee4dc9ea91441","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.b56b7743.tgz","integrity":"sha512-Azszup+vl3nvr4mjpFDrYeIRMfsgPsAKcDCUCoOsyjeer+2R1Hq77rJGBxEDDkMusnU7VWaCzaLxW+r4R+bTiA==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcM5O9CRA9TVsSAnZWagAAbfIP/3d6Rp2B1HGM3SQ2rrx8\nG4jOAGXHnJu09P2uuMeJw81hR1AqkGWlH2BrYOsenh7zVBXK5zs+D39zA+CG\np4lWOpsldcCyq/+yj5kZKY6Arx13Tcz3n+MND7iujZKfG4bKgTq5kPSdjN9l\nbSxH6GIvzq+o6aF6T+7Xi9wmKw1taXizyv9m27oZYdG31CHEjry5cUYRWnw/\n3/QVTL3RFfUamowr3olEHvooq67u31tram61TXWb2ZJyIzBqvhQy3UVxEQHm\nBiWgpayGEhti9jYJvi6rGnyitJMIIGF0RG/papYfjAxl/cZXpZlP7ziNUUG6\ncSLcXn7lbNfGAIjPjrsZc2i/OBF85Dr8KyPRtL/G+pEdSIomPTtAuDiwrcVE\nuXyZ3EBKAsocjbORwmkNbrz/7IHZ6vSkdsqAOitAHU0mQfQC3GFnW6+vYFE8\nZYkE/trnpAaWm2ZzrkNudXU15BuPeBPEvBmP4F356FFjz8NcNBT3ivIDVM0F\nNybJ9tZQQPGanzL9036dSsJyKq07S6azyFhddWNGtpWrGG2A+Yvj0A5dEY64\ns6y0O5Aax+5HyyQjfYPUMRHBgYZ+N3CSB29tPQmZ1KUqeuxoFfCQnki3Oaus\nBXkRapCXBotF6QjUVrSxH5ifGJENcwWV0jZPG4Q9K+Uy+eTmpkWrWTfnu2lX\nj95+\r\n=hfv+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFmg4rKqgTefkrkBoYYqQlckeYOozfh5ZlDeESPyw/dkAiAzQpoWfFfzNwDNghZE9P2KClvQHuk6fAkwkUTp6LIOIA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.b56b7743_1546884028440_0.07268486440210542"},"_hasShrinkwrap":false},"3.5.0-alpha.a89d5ae7":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.a89d5ae7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.a89d5ae7","@crave/farmblocks-hoc-input":"^5.2.0-alpha.a89d5ae7","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.a89d5ae7","@crave/farmblocks-theme":"^1.7.0-alpha.a89d5ae7","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.a89d5ae7","dist":{"shasum":"cdf867a7e9cbac9ab022ef3a6a0bbb8111708ff9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.a89d5ae7.tgz","integrity":"sha512-ts541fersw7f5rxVYxmOwLIxsSBmiUOBd0iKa2PXSGVFDKMKu3j7D/oDMru+RtpdSyl8LYJc7VQ+OJGEhFiVmg==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcM5fDCRA9TVsSAnZWagAAcmUQAIyZt4FQcmGABgLTjDN7\nEd43UduTssIAskt0u6xLHMzRe7jYPjfBNp1LOAPwTC5RiFJCubwXiTd7Rwmm\nCzqb4AkYuJpErrEyhd9CsfvkKTYWt007DaH4a8L2lsor2SOPpzhYc3M3KM3D\n4qC4+EawRU42I6KCiAg5c0JbjzMiust5ZYLjRyytprez+SdW+hEEkOxyckq3\n7G5tMSF9bSQRia6NF34FOkEbD6M+1vbeBspWdsrDqCASYnyB0P4Wo+b2KETb\nKzUZ+Sw2vSOhwyjd0L2ThOW5ma8RTzVtzHL1tv5Nm4bRaWKt2ewud7ex3VFx\n1jANloeZVYHAHzIZK45gcSYr227uGOMsxpM717gJTen83f3ejroy3AG8zb5t\nIcL8Cb4YdD5ibs6J4mt0BToamG57O4Re70qDy+hQLEBXqukgfnr84H7K8twX\nQdXpn6+P1dLvpRJINkBXrcuj65SdqvRlaaIUlobwZI0KDJ8h9X4zV7DiC5vC\nrpsFEyYlVQf8kKwz+r+tu3SuxxYynJXJmrEa9yV3MX1PyStk0yYKGvJUvhWF\n//4a8nbMq1tpjUD4c33c2VUvwHGnQQl7232O74nLR7jVbpWTedX2IsxMXM1E\nczO9+/bWVRN0j5nz1aFjyJw52uL9/qMa2oA1s8J3BZIFYDgorZ7/29GkVVY4\nwFFI\r\n=xf1s\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEzyCcStDC9myN8+OKHBdb24A5OHV3fj06P7SKItrm9lAiEAsrB33obWFu1AJ1hpS0vCZPEhgPZ4GI5tCF7SarSVQro="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.a89d5ae7_1546885057815_0.10666202441107986"},"_hasShrinkwrap":false},"3.5.0-alpha.d20ca3cc":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.d20ca3cc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.d20ca3cc","@crave/farmblocks-hoc-input":"^5.2.0-alpha.d20ca3cc","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.d20ca3cc","@crave/farmblocks-theme":"^1.7.0-alpha.d20ca3cc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.d20ca3cc","dist":{"shasum":"7edb89491cfb520440bd1f473820df1a293c2fdb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.d20ca3cc.tgz","integrity":"sha512-Zb5VaKxiKSyAabEK16A8iFRxyBbRrh5FKiPMvQ0yFVVD7yblF4SXwAHW0q/sOnDuV1Sqs3tKOa1a0k4z4LmL/w==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcNJ+vCRA9TVsSAnZWagAAb5kP/jnmbdB3UdeEV9eTrrn5\nMASrlREMSKamtFtmbqxsQgGDqrbZOssE9sCIkPS9xVPucZq1TOWNVDNQ73hS\nBxXlAInCDuG9EaTxAy2EMPBKDfGLT8TcJe67Ch5oriZdRnm2RXp5BZmeCifL\nn3v2hsVAwz+hEE4lkCb9lk2BjKDox8bU9fftr97HXTV1DNztIx2T1XjKgLY/\nEsyvM49HQmuq+QOL4j3fl3TC1nDfZ9wWohZuVj3+49/LZKqSCKDbmBzcnawb\n/VHu+mOE09m6S3SZuQBhjs+atUbUN0hhoG3EwjVNvMFGdbIhL17tz1S86dd4\nmtMgCn13XAMaOrWQFiSpIwdFheFKLGNrnh1rYr5Q3KWFY6PSEV/xrd2nXL0F\nV4wBqP+tTwJk/RvwhlEXEH9sm3hue8U4/mpB7Zuj2w+pyegM3LJFRzKZMcvi\nG7Ctt8tXgZPDI3R7LI8Q+FaLX7be7uoX2s+7Ggm/3fr7f2Xi0h1au/uGhmwC\nbdEXQp6DM8XE7RGCWpckdaeKPkwy5SVAFQ79InYk+9hxuoYoi+83t/O6GII3\nnpYTCzCWqW37lc7uEFdGmg1v5Q3miTQmA+u4MAia6rL0fDBDu3G5Tp/HOxzC\nUn0tvI6VMuqPFrC6UBGljgGf5VA+iN+vgWVqjoNAtnqQvZe01+n8+KKBAFUl\nccoL\r\n=bSlg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdmh1Cgrw0FxaP8pfd91FUD37HDPOtAktsvelZ12uergIgbz17791dMkVRkS/wQHp2URecCw0X7dq3RyGm8MHdjls="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.d20ca3cc_1546952623024_0.35742384479512657"},"_hasShrinkwrap":false},"3.5.0-alpha.d17918c6":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.d17918c6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.d17918c6","@crave/farmblocks-hoc-input":"^5.2.0-alpha.d17918c6","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.d17918c6","@crave/farmblocks-theme":"^1.7.0-alpha.d17918c6","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.d17918c6","dist":{"shasum":"6ba92736d6341019076633aefa884bb78c954a27","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.d17918c6.tgz","integrity":"sha512-/OdcVhvRSk+BwJMUU1Spwx1uKnmZCQeE6OkqHKGTJcU7MYIw91K5g4sqZqF+5imu1KgxGiHJVAE3YN2UBxUZrA==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcNNITCRA9TVsSAnZWagAAoj0P/0whbwYRT3fDJipbhZpn\nG1W/6ndYbLsjidriOGZGCNSDS8aC0GgO3sHUyTI01hSm27nE/nukRHJ5gBR7\nYnv2f/Im/h0rhSj7QgntJaRXW3SNgSLhr59tYDypRNZaZ4zo+N0xmPBGwg+u\nm0r3lIF6B6630vzVf0wuGX6bEe6yaOQcA6YleLmonLHuyDxpNTFLJrEYXIa6\no/JtPH6E4DuooJjUMRG3kipMDfBdnqXrD1qNmgV33TkV7zrEuxlujm1hwKiD\ndtz5RwOijNoALp+7OuHXL8GNWaz1efcj+lJESQvdBI5Ip4DPw88RiBNzOyZl\nOlVzFg277Zl5/Ex0xkj3N/OKy/eel6dI7DYT+K3rJZTGfrEpr3RbWeTYnH9+\n1lZE9Ccr4cQophqrhfNcE29HHaosyfQZoAsSeD0iQRvsJ3NaqD07v6MR1phK\nvWdwoya8QGtV0DuJMOm3zwoA7s40c6bIXbt6na7Jm0BY+uEkABBWALkTvd8E\n6/Oc/8cdbGGPmek4Z9BEf2ABFmIpKnVq9EE2MUMET0db5aN61WQ8Ke0J9fzn\nSYQQxD8K2mCsDG1xOLnLyRrswBfmeOS/xnAZU3LX0fIsMdsP93AHa6Pms6A7\nwB2tdyMoazS17gO3ii83y6D7e5YnsKqG04uOtKJRmsg4THAxVZcuET02gVgF\n/tJc\r\n=bnYD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDoTCTHu8iAHWOLYiI9/KJyZjZAIKaUd1zKD/DQduUJoAiEA1Xj6q9OPq/t/9IBwFT9/Y/tlOfDP5w2U/Zw8f91ijEY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.d17918c6_1546965523094_0.6316999104053451"},"_hasShrinkwrap":false},"3.5.0-alpha.9772d56f":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.9772d56f","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.9772d56f","@crave/farmblocks-hoc-input":"^5.2.0-alpha.9772d56f","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.9772d56f","@crave/farmblocks-theme":"^1.7.0-alpha.9772d56f","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.9772d56f","dist":{"shasum":"a4efe6f009928fed705655cdcd79ee31967f1898","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.9772d56f.tgz","integrity":"sha512-43MMk+g0FEnYoeNY8o1YL6OXgWkYf2Kvr2KVpG7D6DJriJsu2QlcZSofWlAHlfq9GmOkQ7Rszyr+VGsoLD4pew==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcNaO1CRA9TVsSAnZWagAA/44P/RH4UstHdsZaCnc0vxmk\nnVTc4wmRmZxlGmZdjArngcxqXUGn5UiZZ6IQyPLlHk+OM8TtLQGi7yFY7Pie\nIHfGd3o6ZCtNMD3XpHQUEX1uA7aVBX6AmYwpLb/rgP2bihHTSa5zmOWvpX1s\nlBbrhRuKfg/2eOHnlG7dwwV2muj1OUZczKrFZlskie67mnUh7YEPRsEITeDm\nAZw9T4gKoLroWOF/ewwm7/dffshqiiwZphtcVOuMrP/GQLWIIE8TjSMohyMt\nZFfgYvc5Z6FQ/RdyCGm8sdHdy9J6c9gAnn+5GPhR1LEnKbaBaR3gAcu5MLId\nIQeFNvT47d0jBDEVr+NcK8PK2RCpTqijOVfTbYAsoWoRrn0uWQmWvi8RduVg\nEkLruHnRUxm6lDsJZrQNG4w8HmSmYVKIYG0n3N0SDXj1rzdDvQD0cj5nYB3D\n96hnxsDS0t5OzEg/o0P6/DsR5Vluu2dFLfq7xJ1EORFsjuuhlgbwYcM2RvMo\ndxHdI8OtfkQ/Wq15PSIE2qbty3fFDRAzvMWQbNM5X3rXUt5pAbXUqHOpudkF\n5AL/xqg8uRol0swMnUcAkoJa79dvQkugipGlYzJwMM3B11+XgginEc4uEr1O\nNQ7uYJokpb5ZP/A7U+mGri0O97CX4t83RIS5qGxK4L7cK/J7eZl1lQ96LA1/\nwpqz\r\n=jC7G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAKqGTtEox9NOBjzJoVWeQUk7crm4236MhTxSNk0e/XlAiBZCgaeizS5ptRz998Muin7nJh7QDAWm9v1zj7DBwgagg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.9772d56f_1547019189064_0.11129844924812815"},"_hasShrinkwrap":false},"3.5.0-alpha.46063efc":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.46063efc","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.46063efc","@crave/farmblocks-hoc-input":"^5.2.0-alpha.46063efc","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.46063efc","@crave/farmblocks-theme":"^1.7.0-alpha.46063efc","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.46063efc","dist":{"shasum":"797deb2f203cfd70ae66774dd45e0701379fab3c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.46063efc.tgz","integrity":"sha512-xvvDm3EvQ0c6Jd2wgol9s8k/LWC13fvX6CoPWz5JmeqfTXxVm3l5VvS8toc6N+hV6PPtga1LkChZOpsBQVlFSw==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcNafPCRA9TVsSAnZWagAA0BYQAIBpEQJ/w8FtXnmWQaLX\nh3HqxbAIJKm6DHwmcEHlkbhll9GrOI7cD9ebB1iHWZl615e9xRF0cbmRpCpg\nG6ZhJvwQZgEY1jMbeYlfNd8+a2QeuAdZPM2eiHSe7xcD8Ym2ORx2ZhbK61KS\naX8Ttuwr/AsIwV+RrwtwuLN/wt++Bm7csoS8A7te6DCoDOaredK+OOUqGFoZ\n3xZLufmYOTkMhReKDIqCmuxlFCPfsqasxmwIIrtKMaQzWkiv10CApqDsDjbP\nbiEaAIxe3y+WA/bzW/CfP7dmtdkchB0FRlHXGQg7AJda7plIm3WxQEg3tewg\nUGGctg+Xiftr10Wy/2dh1cvzzFIVeRHQAKmD71HICXP/iL6Gbp/4KB3V/ors\nFKUiiQaVszFLi22ezNtcIzAYKjC+x9ahU6hIz6H3YNFx3EZHdM3diL2UCeAh\n/OBQehqmEQsxX/Ow45/7OBC4vF8sXDBilSRqW81CYkIASJ/QexaRrI5aWJK1\nQjuvMRZnkjX+NoQEw+b+N1B41BAMAi3kkuVnNOqAHsHifgvhmIhb3zr3X5Tj\nioipSrrLGV44/0q8IT/D4SdHL6uoSI5yOwAr/oJyrbet1NS5UE8Ra2fsakMD\nW/t3tQQ4yxSu8cQFgPyQi1x1NoB36NkU2i+Q/7OrIMFb1guWrqIQ5G0Sa7w6\nKNUG\r\n=U73R\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFoGrVgv8N1x+41yOQf5951t9QO7Ja7Sp7VdpdKI0gXOAiEA5ExAWMwlDWFYD8fWbxr2jeOaZ9SPEpnVOS0ZrfYoG0M="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.46063efc_1547020238668_0.7352044038932106"},"_hasShrinkwrap":false},"3.5.0-alpha.e40864c2":{"name":"@crave/farmblocks-input-text","version":"3.5.0-alpha.e40864c2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.6.3","recompose":"^0.26.0","styled-components":"^4.0.2"},"dependencies":{"@crave/farmblocks-button":"^6.2.0-alpha.e40864c2","@crave/farmblocks-hoc-input":"^5.2.0-alpha.e40864c2","@crave/farmblocks-hoc-validation-messages":"^2.1.0-alpha.e40864c2","@crave/farmblocks-theme":"^1.7.0-alpha.e40864c2","react-input-mask":"^2.0.2"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readmeFilename":"README.md","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2017 Crave Food Systems and AUTHORS\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@crave/farmblocks-input-text@3.5.0-alpha.e40864c2","dist":{"shasum":"a2e783d5bc69bee7bc146d63c207926421f55752","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0-alpha.e40864c2.tgz","integrity":"sha512-BkINzXogJEw0N5X2Ub7/pg04px+fLQPABoTLX+P6R7hemaUXki80K5UvGPBVtdhap/cgmXOjhvehyuzHzN2kXA==","fileCount":13,"unpackedSize":65033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcNbD7CRA9TVsSAnZWagAALJQP/j0lEBCoG3TDrL9fHPG1\nNxbjvrAyVabKLNmFzCnPAEDl1MImAVZwdofi7pgcyv6iIPqJD/yyI9jpN8sV\nYWjIv6fBweYAyOqFHTAXXEdnoRjOBS04Dps9zWhAZNhiNsankbx4aH/zEcqk\nOKsitOi+QBOTUgRNS/I6XRogwoYweEMcnM/tyk50yx3q6ZWo1V2PiEMnHNug\nNTl5tmyLvijlxFUEqPWyqWdjUjYsDz01nufBbarW2LLHLVkgmtPHktODlDTG\nj1oJDlxqncV+b5bi1rzyV0AahbDIOOlWuYRuZTnYEf/ZhlX/4MAhHlbiiPeE\nTO1Uj8rXbr6fNxlHLxnW991wVl6+rRmXBuHKN1J5QiFLDmeTfyPzsXFoy+oJ\nZjUsEKviMobPenAAvzfCxPAouoPKvo6Z9V9qFJ4m/QTcF15mdFqpbnGrMMtB\nIIrkrL2sen5ccbz21JjQxTcYHcNF4CqtUTA7G50UAtxrUC0yORJfdT8x0ofR\n/dWZN4L9oyKGLspbv6KUn5Yu9wJIx5TNU6JBCtPJ3QXrmDm1crx+i0cL93uZ\nzruuoTqfEVMudwp7KkAs6pnAErYVGcOd19f3u2nUAJk0MLEhvDv6e8Fixp+5\nYa0d4VrrkupUSB5I5Kn37RnWz5rblX37swjptYrrRadN9Q5lYLgS5TgKbty6\nlgOv\r\n=uz6y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4NEw3UT5xATOtG+sjHLHfNSuGzfu8AusdqwPMbQuOegIhAPACseHtbDdy3T0oedZ/Qv9jCnd542PDfrhYYdJv2kcU"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0-alpha.e40864c2_1547022586718_0.5068057688566934"},"_hasShrinkwrap":false},"3.4.9-alpha.3":{"name":"@crave/farmblocks-input-text","version":"3.4.9-alpha.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.7.0","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.1.7","@crave/farmblocks-hoc-input":"^5.1.2","@crave/farmblocks-hoc-validation-messages":"^2.0.4","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"c702ac7c03c607d47a55063721e2d9653e397bc4","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.4.9-alpha.3","_nodeVersion":"10.15.0","_npmVersion":"lerna/3.10.5/node@v10.15.0+x64 (linux)","dist":{"integrity":"sha512-3dPU7hPikTjAES+5JVNhMNmOqI74uI6Z9dWg1B+cSAo9IeSr5xSRW9zsrOPLFU8dHSbZdduC/WuubayYdcT4/Q==","shasum":"01e73842633751a4d2559c3252e5d692843d6118","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.4.9-alpha.3.tgz","fileCount":10,"unpackedSize":64814,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcOJQHCRA9TVsSAnZWagAAqEgP/3zJGPFvRompxa1PAZ5d\nXi2vSkP6QyZyWvnLfenULPiADuAmeIVbG5brrtMMaP4xSkulSYc2HcgxaCko\njqMvkWtlEzxZ9KWtqVQmb8MteG1r9pM9/3/4Zwb0XYyhuRl1g6LX9WiwIqoF\nHPg/GOLk7VM8tEBpmIwwj7OhDNpc+npnkTcyb8rWUc2kp3fCAJV2VEGydx+w\n93EDNxXcvStXaGJ4DTi/JYqGnmLZ/l5KiKR0uH/AEUtKvoMW5OOfVhjBwb+6\nPMqMRPZJPdttT8DZgtReCKa+Z1I/0m32Jisjgm6ad+5yQh7YZPH4C5HNbamj\npDjCN9svcOgS8TkGMiXFAwxVfzXOVdYwOrKocjDay8u5rAIqtgf86JM7zjGc\nC94/9hKfIKAAcUkHf1V4hWWbfHM1gqBTl/9asn26vDUK8PzVUEJeVBbiwZ9s\nCOznimPbOpG2T2w7pTNItI/A+gEC7JW8jGlEdUUxyvFwxlZXjaqyMZC6jTnk\nHvGJMv5iFCckjTnmE8qVNCvAOUJHCUiSDGqtjxAWhQEVS9jDQEXaBW2RQmwL\nU+Gc5zDxeeudtYp9elkmrJ62oZYg4DwGurIBGT4mUc0JZdTvnk3DeZxvbQzK\nh36GtlLVc0LhFVHe93kWCqqHDU747XZ0pK7GtA4K0a4I4P6GRAAPJFf+zNfV\nZF3t\r\n=NxIx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeSAtrHRCgkX5E+yxaWdc6/m3d2njov6mwkesisS8v7wIhAK2z8AZMirhCdMaCYqmGYK9iI/NhnHzT/5nTMiHLixV5"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.4.9-alpha.3_1547211782970_0.8111759045275395"},"_hasShrinkwrap":false},"3.5.0":{"name":"@crave/farmblocks-input-text","version":"3.5.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.7.0","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.2.0","@crave/farmblocks-hoc-input":"^5.2.0","@crave/farmblocks-hoc-validation-messages":"^2.1.0","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"594568c769383d03fb1d99245686afce996b653c","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.5.0","_nodeVersion":"10.15.0","_npmVersion":"lerna/3.10.5/node@v10.15.0+x64 (linux)","dist":{"integrity":"sha512-pJS4wSbfbXRLxy49cl75rIHegvimgJoE3gduuNISah5muuWj5FlY+B687+XN2BJLVwOwK2SgbvBjgScQfhB4KQ==","shasum":"a830ca95b6f90bd3beebea59998b849a4956cb34","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.0.tgz","fileCount":10,"unpackedSize":65272,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcPNj8CRA9TVsSAnZWagAA71sP/3+T6qj41Uqn8LS4EHQ0\nq7F0tilKrJv+SkZmBwmD6fy9HzGuXRwnH6tsdTsYS7cl3O8rS1B3CQ0/Y67C\nC2ZiBYtp2Yv7l0g/XyTMLMqoJOSebOH9a1KDXnCkjHx32rAUIovhKJQ4tGab\nMklZwxzb9YfMbXTBw7haoGYbI/awTaPZ3IxPInXZ9WhIXp5VeFUJoHoEqOT/\nAdSH+Yhy1voN7ToIW7iPvx5WSxla0+77u4TSwFnoLrDzXyb4Wj9stViRSQvg\n3LJyTSc/GOYbugpgtdTNLkd+M358eHVTV3iftbGC7UFHIziuHoaY2bwblJfG\nNqraW0nKwKVPFwkalL5thh++X/7M3BdW66q6Ffyc6U9+dNANGUffRmcbONzv\nt4o6RxC6hmXEcuPLX3mFoAJ0sehC6CHECbyk4wjQOeK490d5kkQOq0FvgFIQ\nJp9BJtOq32Z5+ZcvAVPcz3SUln3nZfG9Cupxyme5fgjWaqGlCe9nl9hIY3Bv\nFKB6HW72h9bpdgNa1Wokz3V3LG9YN8X4jO0j0plvQrAZpsW72PA2v8750JH1\nDPXV/yPoqDGrRCDuf3LCi4lFki4kYzEOc8krK9F/sRq0MKDHvjGZWrls3I3V\nKaV0toPtXl05TMiDYePpj9WZLelAGJJBmNHpbxPYSapz75eECgvTbe2JUocK\nbr/p\r\n=3O1K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCn5bOGLuxgJwP6Z+LsPcAmsHSaJODJifiSDjMKtopl5AIhAJjIqObkj0L9srG+8/P7UNjD4N5zxs9L7ScFKk9iAB1x"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.0_1547491579926_0.4758285451772215"},"_hasShrinkwrap":false},"3.5.1-alpha.12":{"name":"@crave/farmblocks-input-text","version":"3.5.1-alpha.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.6.0","react":"^16.8.0","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.2.1-alpha.12+540725d0","@crave/farmblocks-hoc-input":"^5.2.1-alpha.12+540725d0","@crave/farmblocks-hoc-validation-messages":"^2.1.1-alpha.12+540725d0","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"540725d0fd556848460dee04fa2d15d1f6103665","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.5.1-alpha.12","_nodeVersion":"10.15.1","_npmVersion":"lerna/3.10.5/node@v10.15.1+x64 (linux)","dist":{"integrity":"sha512-lmXG8rT9+/+KdJHGKoF7/pIEhhXi4n0tcbNBvX59jAtsZScRVf6nJWsH+CTgIf8ixX5OiOYtkiObkwsISGEZuA==","shasum":"6cf393d3ee299c5dfa315c89e2c133e64dca6863","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.1-alpha.12.tgz","fileCount":10,"unpackedSize":65344,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcYrOxCRA9TVsSAnZWagAA2igP/37pTv0nbkaCctYjkog7\n5hH+O8c95ew8Uh8LzlNEG2DqoWEqn2B9/ZYVvJAgUYJ8PHx6dEc7SCCvpQM1\nJ4vtxq2pnw3tPkhUo7KLzj9DTRom0hInE4tqtYSBjWJoKPoXIETHHFc/piNR\nGGjZgikaiXTGNR0K4Ab4rY3rNV39qp27t7fozcn/0pn/xaMYN44HIeA9+ALC\na61pOSZHI8lRe/OciUxHkQjSrUcLpkVCtIJQNjK2HTNzxcgT4MKIGJYmNJW4\n2rIs4qwEufDcp2I7aoWzXFnUsucoo2rX7kBFqBDZME51uJuYzexfr1ZDojWT\n3pGXoNZNbNMphnkufdUdiS1pEzXEsDhZliomP6dfyAhUo642H8bAQCeOLv7P\nyK4i6MIfl/hARdGIUym3CgWPW4E1nMSmz4YwH8K+3a6ZpoyRPcemIl3SVX2j\ntsGA7hkrpYs0wDmfpnPLIx0ZMDmwIOXLzFBvkX2DSfft3ElrhE7SW0kMX/fz\nWnDT/ArX8uVy0TbJjykMsyEvT/a2jXyuURvkNQuVz/qnKEEDyGj+pz3WWE9R\ntQYmse34uFPrzJAKsRdn3lx7umh0bi1PBa6uNst5IZikmIFa2y8cEmxqV637\nDNmsIEbHhj1FKcVJi4uLQNrJsOuzJ/t94aEQ0Cd5ssUoLjPpYenxq9AwHdMx\nPGDU\r\n=e0is\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFzXc0PfsNwcUqoTw4GwxRfqORyLrfK0y0t5zssdnmDtAiALPD3gyT1FQjJt80lk2LQBELy9ox3n9YbRWPxvr0A9lQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.1-alpha.12_1549972400657_0.26453168755106793"},"_hasShrinkwrap":false},"3.5.1-alpha.13":{"name":"@crave/farmblocks-input-text","version":"3.5.1-alpha.13","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.1","react":"^16.8.0","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.2.1-alpha.13+1fc1894e","@crave/farmblocks-hoc-input":"^5.2.1-alpha.13+1fc1894e","@crave/farmblocks-hoc-validation-messages":"^2.1.1-alpha.13+1fc1894e","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"1fc1894e0d8ff88d18e5f2839ca03d1fc054eaa2","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.5.1-alpha.13","_nodeVersion":"10.15.1","_npmVersion":"lerna/3.10.5/node@v10.15.1+x64 (linux)","dist":{"integrity":"sha512-WNbj9X0pvybJiocqwHZviXhO59gqQ8L9udOJvW9ElW7N/QsgCGj4m/lOQ1apV/+bCrlGcc5t75pV9mvh/TEC1A==","shasum":"c9e7a11265fbe61c9722b6b29c8ec1539c8f42a6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.1-alpha.13.tgz","fileCount":10,"unpackedSize":65344,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcYtnPCRA9TVsSAnZWagAAOzIP/3tK8+R2LVQy37UIooFO\n8RvOkAsHAb5CGNQ0fbUzJFAlsFui9D3X5J3W4BAicTnrrC8V0r5XykvFJSWQ\nheaGorOfJyLNXCFYHAB7XCn6LlF7kxKeiZ/NdAVJNTkBbXOW+rOJI2O5hE7j\naFaFfXmN7zKhf2iJjxCPeEmapsM0Q0WpgyfKv0NxXdGdtWnnNrtMPnYxjXDh\nNdurgBEv9hC9i0v/vI2EwZblc5obxXUR1AF9SCK/0mrWu829gZ0pHkWXmEkR\nnt78kHDqwvjJZXgVh+g23+24jE7QoDMCxE+BrER84ufNnzX8TgxGRoXS7HHy\nrA/YjnLYMhb1wGdfucPz0inpNO3m0I9YnTggvvjYtofh1P0TOgupY6bPgTOI\nCVtZ8SC4DquHyEWExiA3DTt/1RKbZAOa4qkCkJ7cVn9+zAatQVVsZuO2W6df\nw7oE5OsmwXLSMDBbQVImoqcKTrZNPYWPxtzNce03h4I8sSmrusRZYwaOMOD3\nggY7ACfuyWqXsia4OmzY6SQL8RxyRIdwX9kJbXLv88vuY3t0hMgTInSf4/xf\n5xlxdwTozhXh4VT6rOzrzE6j3mGSKkW1Chm1fE0irK9qtd9QXBqvTtmB0Aoc\nqpVJWh+DVCS+Vl57mkSnRLb4iP4tguDL6kgORJwJmSsw/RnW+9bbAhv2NVw9\nAbMr\r\n=lpC7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF2Y+Sc1uB8GY3+f2LkODCd3OY6uQ+Dy+aPBLM0Iws4mAiAPbn4kQL29ZP+CsWLrwPgMXmrmYf45PeyMkt6jYYuhNg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.1-alpha.13_1549982159011_0.8188112770336484"},"_hasShrinkwrap":false},"3.5.1":{"name":"@crave/farmblocks-input-text","version":"3.5.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.1","react":"^16.8.1","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.2.1","@crave/farmblocks-hoc-input":"^5.2.1","@crave/farmblocks-hoc-validation-messages":"^2.1.1","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"7d11725fa98c0521a018d547329717e9345ed243","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.5.1","_nodeVersion":"10.15.1","_npmVersion":"lerna/3.10.5/node@v10.15.1+x64 (linux)","dist":{"integrity":"sha512-cik5JBIJESUo5pkM2+QWCirG7pviAmfvdmJIrU12rfp7X5V7q0cxbjxWVUWZv3dt9f5ZJR8a0pZVOkTfp8Xr2w==","shasum":"4938edca8b391c86096fca2a554c09fd0977edf3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.1.tgz","fileCount":10,"unpackedSize":65492,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcZADYCRA9TVsSAnZWagAAGlEP/0oPuVBqI7ZDA7dm+Sif\ntwGQ4JaMeRWFmCLpL6ptjzrxfZdjX0r1V2UI7I3OEZFtEEU4wTY79GdrkuBm\noXMs1MPuvNb5TZW45hVUvfWdVImJM2ruWhqbMR66qDHSDaKZa7InGjayRc//\nQLJgMKy5IvbXGpdx4ps6psvfn1YGWTEeHuuuw1s1WHXr+98hVClggqALsmd2\nH5BR1AO4PI9kqJEdgXCt3uGebzN3LmaXTmVH53YzIUPVSJa+y9vMJqlfekOj\n1c63daF5iTi8yjfRohR0ejtXvhyL1byk4la0q9tkdg/EasdOeouyL2Qx7e4B\nEtF93t1Wno0F1Iq7KEGI7HtStl5F4LdGUdYSi6X564UkB4f37kZy0eNWuUW/\nun3rskjktH43IcmeZDjprMknFtd5CopOCJ7IX5sdNVmmsfh/vINNVI6mYBlT\n35/5XX7XkjuZmz9sxWspviMhL5LLHsZNXrazS1Z4iwDizRYQdkFctDUSc93y\ndgwV2WGvAo271qEkO7ij80LF8bqEBkwtpenvYRnOe1qMSsBlBGv6g6ELNvyE\ndaoiY19ZieroOF0dualkdrSEiVcExCGhcpsqJX4a4A+9gaDKwDcyvteMS/cS\nd0mWpU+qc5X1mOrVBjA/4i/3DSfYDga20a1yCm3kLIv2umq9vIpSBBTLGIEA\nx1uj\r\n=aXZA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCHy9FhFFtHSzJ8dt3iWq7Q7KKlF7oVOa+tV+7c0ncZ4cCIQD2aeZhbnuZDRoQZt4hWLWI+EYpXSvqoj2Z4JdMA3KL9w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.1_1550057687574_0.7565570728537969"},"_hasShrinkwrap":false},"3.5.2-alpha.1":{"name":"@crave/farmblocks-input-text","version":"3.5.2-alpha.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.2","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.2.2-alpha.1+b34fbeee","@crave/farmblocks-hoc-input":"^5.2.2-alpha.1+b34fbeee","@crave/farmblocks-hoc-validation-messages":"^2.1.2-alpha.1+b34fbeee","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"b34fbeeef715f07d3af525e113932897260dd673","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.5.2-alpha.1","_nodeVersion":"10.15.1","_npmVersion":"lerna/3.10.5/node@v10.15.1+x64 (linux)","dist":{"integrity":"sha512-W8CZuUPI0h2ZEa4JhUoqaDmdwCCRl/IAPkYxquy7YKnXMV3DELHjUbN8noH127NVe4DMZxJGmfN9VQjXEtN+/g==","shasum":"9d77866a680fb7263a1eccffc32e717dfd8dfc6c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.5.2-alpha.1.tgz","fileCount":10,"unpackedSize":65560,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcZxtICRA9TVsSAnZWagAAVA0QAJkT43FWR08f9BA78R0K\n2w5nY/ktyEgjeQMZblMdCf1ZYIazZNBpPBaK/daCWFKOFIzqrZQCnuCZad/m\nryGXxSzxDJlonfOWH8gnFptJEDnmh6nKMa4BIYwjemKnUnpvwKQ3RlUbkZ1n\ns1KNSUrRvK2zKq42MwYNxih9hH1IvV1dtux3Onh+YQCHpnHcZ8z2ys53d9RS\nfzajNzlNk+zIfUySgoEW7gaDfLHQJl8hBnZRf/R8GUQ57XIo5QlR/Ry6hQFI\nkxSGG4BvtM2vF8l21D2XombEKM9X5EFU1z8eF3LI0uNWkgdaTDNhigJJEJws\n5aGf0v7mo1+BOLgzb3pF3lndO+EEiSrZ3lCtXbEjXFnXl9Iei8z8JYGlMetp\nQwkeVKbO4+xI6ehEMVgMzjpeMD9r8Sj2SJbfEs51I0nGwW8n9WPF9qfnkaSM\nyWTQc12eaaJSTSD6COcqq8b4ulnTKlXb9D+30GNk8ad8X+NIrYHXbTrlad8k\n10C/PjzBg0iIMJ8nnL22M8lTVL6X/GNnczIvKKlBw6OqI8wtV3jRuOW9yEZT\nWhm2AWhpg0EMmbcqYRH4vAMgS+mgytYuQ0Rw4BJZ4SoC64Lqfw5at62cD6Rx\nbfvajHhROdlui5J4HTZM5ZDLNtEC8ZsMHVw+aUvqlgkuU4DDOMPYLjYi8M44\nKTtA\r\n=xT7x\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlsxtVYrtVZD8f8c6dx9joNHWTyWatVJolmpZdNrD2ogIgf9yy1GzhnqB8PURdsNfb5NxZabbYc8wThkFNoPk4eo4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.5.2-alpha.1_1550261063446_0.34806291360157027"},"_hasShrinkwrap":false},"3.6.0":{"name":"@crave/farmblocks-input-text","version":"3.6.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.2","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.0","@crave/farmblocks-hoc-input":"^5.3.0","@crave/farmblocks-hoc-validation-messages":"^2.2.0","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"053a06119029b5b8bb00a4f52d1b7085c465dd68","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.0","_nodeVersion":"10.15.1","_npmVersion":"lerna/3.10.5/node@v10.15.1+x64 (linux)","dist":{"integrity":"sha512-NyYCcD5+NEJvyhxdbjQMxtI8zWcXyFpRcSmEqVPxi+1aUHjlJJGm2XPs82wtQgExrcWHF5XMkwBku/GxDttjvQ==","shasum":"6393df45ed6311583007f0b77af44ec3bf289c30","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.0.tgz","fileCount":10,"unpackedSize":65846,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcaum3CRA9TVsSAnZWagAAEGoP/06vPytaqxMGsUHrNROe\nFQpy5vawd0/3HSzRjkDs+cEMt3PYwFwi1g7FEmnZDMfPht6kxiOGY1uRJl1G\nK1NT7Q+Y33F1CgFPSyaCBENEmsV4t/oWzqMCM2GCJyVI+8qdvKiSIvftQieb\nafNHmx7cBculXjjbMmm/sj18bEd7qv+l12C6N/rP/MVoaQDfVV2UM969Aldy\nX2XAxR3y0sj6/zyBAfUqQbbM3uVdVd5nwCZ0gYvpX6l3o6HowUWGAN4esbrP\nCl810cyvsg2H12Y2RSs0ERV2oGpP2glTOFsugMjP1bBvL/QqTzRHbYtVwVoD\nES770eRhqjG6C7FceyNM7HlPmUrrZcxsHKTrEjD8cbeO4BPgt7dSlg2+gWwg\nWTZFOtMWwx6Qxb2vYoUheAQEaMBWQrRB3iJ7RD5gI92SHH5GoHtN6NW0COic\nqTqKx6DtraOET1LchyZp6Je11cEuu8kpMMhPipU6SKnqWBi68bZU/bYLh0bC\ncjW1OyqbuOMjTrzzf+l5hR7GsAbatvFPzmSjAGCGHvW45TywbQXMXxHkGgPa\nmRa2irc7te+2SlpsFOroQhY9mS5aYfCBj672rWmLqleBcqziRCyT7uL1Aa3j\npjsnXsauuPwLgSGCzLkhCp8XxDjYI+x0UZSF5vwPPQw3M/uhjAQ1qBbIFU9Y\nCePV\r\n=iV8h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDe+nUmRRXvmvzQ+gG6BW4eA1lUmohN+2s+qrvZY9rhMAIgUHdvyMP5iu9ARXSeWmgFJ2ZMqC6W6sXAC6g+Nf4ridg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.0_1550510518996_0.4359757263562276"},"_hasShrinkwrap":false},"3.6.1-alpha.10":{"name":"@crave/farmblocks-input-text","version":"3.6.1-alpha.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.2","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.0","@crave/farmblocks-hoc-input":"^5.3.1-alpha.10+a164c52b","@crave/farmblocks-hoc-validation-messages":"^2.2.0","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"a164c52b85e1adec8d58b41ff4b9e5aa07fb7207","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.1-alpha.10","_nodeVersion":"10.15.1","_npmVersion":"lerna/3.10.5/node@v10.15.1+x64 (linux)","dist":{"integrity":"sha512-d6vhxq/BrIzHyZba2fU/T4CyDu6dZRIgmHrS0w2zDyO5IecjUlmYIpiKOh9gTw/aLWV1EIQZNHs8HIN0PN5YyA==","shasum":"51a18b1335e49e1e8b90db0ebb3f6ed6ff1ac5a6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.1-alpha.10.tgz","fileCount":10,"unpackedSize":65882,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcdpZCCRA9TVsSAnZWagAAFBAQAJ7IOuIYB4yNvtzSxMnx\nq5iPHLzeas2VveRU57tGJ1scXt253WjwiDmsG6fkJq6zTRSuL1fvZn5YJYXQ\nosLmDbXPMtFIiyoGKW/BvEiatkzACidWUsf3yhqzPq9EyDqp1jCitr2dVCrS\njpYwKVRlZ7DIKlOMvqs4xA8D0XNcR32gtZwnFdjGbxhh7x4p3BQto5oTVS1/\nNk6teT2hbhFi3CLQjMUPd+hA9hqrXkij9w8C4saDIpgRnxsWquPlWixK9cTX\n93farsQYZ2VMJsly3uE3GEt8YZGVilz7Bl5hAbmioVK26D23x+IjVWHg7BBf\nfItLSZUSB3EqSCXYBuM3uPg5mhGF42VPfObT/4kXuG4FCO0zarldKgDoeUiL\nbVYUZtKizjCtZenMQ4edoktshK0RazBq0K7zAYqZGF+iS0fIjGruQd40SBga\nx5eVvUzaASlnx4yRBmfiUlRNB/BiBCoV81cFgWkamme9/RziCS62Zvie1K8u\nKf18uXwBPvqaEcDSvNXVHPVMYrfXzjXJqpEcZ/4tKv4b6d6M3N98/TgMn3Ko\nhTlI6X9jVqKjZFnzRqO7W+XhKGZd6v3cIE47NdibvK46u9vowM1DrGoc4imu\nI6R4Bvh9Qhf+mc0SDqV0O1YIoTXNERShMk1oIQx8L36hwIdruRt9ojzi4V07\n4Udp\r\n=yaHH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQVgwwSRaYbZWEnPoJVN9W3qLbqvZrsHrPIscmIvegpwIhAKEXQpM3cpovzJrk3JadpJgxKBZ7g9IY6qgNC3AVrInf"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.1-alpha.10_1551275585358_0.10592999435180706"},"_hasShrinkwrap":false},"3.6.1-alpha.53":{"name":"@crave/farmblocks-input-text","version":"3.6.1-alpha.53","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.2","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.0","@crave/farmblocks-hoc-input":"^5.3.1-alpha.53+59b4d8bc","@crave/farmblocks-hoc-validation-messages":"^2.2.0","@crave/farmblocks-theme":"^1.6.1","react-input-mask":"^2.0.2"},"gitHead":"59b4d8bcd9024d95f1a9c495dfee6cf9baf3681b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.1-alpha.53","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.10.5/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-kk8mWy/m6iTUF4XTBybVcxsMx3C0ajQDabFCA8+3jvkCFIuCFqVhehjt5QENCFGk1R9tdrNvIGIwCqqf1CuI3w==","shasum":"6be7d377c09e4b4a0013a7d35550efa40212108c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.1-alpha.53.tgz","fileCount":10,"unpackedSize":66468,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcf9dhCRA9TVsSAnZWagAAFO0P/0Sgs3sEWDcGZkc5KpQM\nXWo3kfEBH2Uw3IbSikqjzlAXIK8TA9ZX5aMcjhQSgClUWEK45CbuH1nof06g\nNwFjLnee4R5YfzHZmp1AqjIsMlHeEWxr/SvXbiGSIrgGuepEMlrcNW8k4gI5\nX65AwLDVLR1h9PJSFlVl+a7mtzTE5s0sbrA7qOFvzDocoILTwiiGWJaZKbRJ\nzHosmuqwDYM0aWthYOVxHfjmUXy4GutxOaJq2ZWWUk1jEYFTp5kOmsEscm3V\nb7XcTNvc5GFzyqu1wuuR7MJt4vKwChEYYGHnU9F9S/m5TDL3/VbncHkMNo4C\nvybm3SsVE7Oco6iu4BFQrG6oB6i4L4pjHK5NIpZbHcHf0QHQPO3DJ+7btbEk\n1VCAtO4p370YDShj1tOXPvaRul2iAqSkH6fO617UQehiN4XJwMF/obRdvD88\nFe7WEdrpgR7MqzdFFI0J/mMeriQ0g34JvY+PoehFB7oW7NJ049ToIFTNfl1X\nSjkAdDJt7/IxMdYKlJZgjbbZIifE7i0j5B0qC41qkRsVNDDPYaXeCU30Isy4\ncqYbo77k7gprFB9p9ELskHMbRD8079YREMWeSFcdC/t53F/SMxZHaLUrlnPZ\n2YhUwgGPu6VzbF25sqPiSBeOPIeFLTAkwqxH80QSfVqDMx/v3X1krnvseW8/\n63LE\r\n=wAJb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB8WcU86h2SJeK+mzEAykNOMX9tu27SJRgrqIlDTynHKAiAui46poIA5yggZc4WU9Mo79j6oydlkHZCjFJMuC6V+CA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.1-alpha.53_1551882081100_0.6626492284826386"},"_hasShrinkwrap":false},"3.6.1":{"name":"@crave/farmblocks-input-text","version":"3.6.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.2","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.1","@crave/farmblocks-hoc-input":"^5.3.1","@crave/farmblocks-hoc-validation-messages":"^2.2.1","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"2d87472315fc24367777d93da878db31127c2fd3","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.1","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.10.5/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-SwRh4SMeHTqYXBt7IJZIKZGLewFfMwhMa+LWjv4yAZzg5jKFegaTnPPv6mc3TXFsWHSk3z0aOoNHT8wKLe/88Q==","shasum":"7aac68dd683496ff8ccb57234650acec5d87d711","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.1.tgz","fileCount":10,"unpackedSize":66689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcgSC4CRA9TVsSAnZWagAAnrkP/3eteLED+tRRWaPzNzkq\njPbzBRNaInjOA7BzPRcc/qTDz4wHdblOf56L+S0uDtKA1fOMaU+Sr3iVnbbe\nw32W2eB9hEN2hWtZB7RFJEYStZHA0Y9xtCDvgrA7RKU6LSwoKLemcF5YbO00\nvRfpTXCPzuedofhX3ZHJckwK77SXEttWau6o/k19FYjzcWsiDBlE4rgD3ldV\nhkVkQ8byAt6pS38CdM1WmkuV6JB0TI2Am++d2uCGJIousa32BapF0BIMRlJn\nB3SQJKkDkvUMHrff7+7zqSbvqUKdpe5niuu1h7QhkgYUIV8QOf4quyt2EPby\n5/fA/+ne3/GOKhAlwfbLGjOUYvwPm8QGCj7b0NKIbsercH+vZRfufGnXmd9c\nGqtZoCoxUCd9wt6ulJWWBng4lr2RpMEV0ePnz8z1W9CvXXcLnbXp4F+j9umG\nu/j3dhkH9nTdYdfe5WJUCih0G/lC3hmr0ZU25r9LymrMAi0+tEfGNPC6Rq20\n26dCvxXM+JcsQPNdYvc/HjmGLKZntwZO7l/xUxqXFys+O8MrWAtrWrblV2Ic\nl5Gn8koyhjlGCqau/GqWAyFHF/9IzkEerU+jEpyolRCyHVntOeQYXTQiNU8H\nurmjvCYPzObBgCaxMLrRlv3sNxRYFZGHa5BnE/Xu1d/0PdMeM0irlgAPrW5w\nFn72\r\n=cDiQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2z0CTiTTVDNuskShzUq0rd7Y581EMbab6BYqHaH+cYwIhAOh4KZHd7v3VCImqJCra+b8H1EzfJ2ItvYuywhlD3UwO"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.1_1551966391695_0.7232316723794319"},"_hasShrinkwrap":false},"3.6.2-alpha.26":{"name":"@crave/farmblocks-input-text","version":"3.6.2-alpha.26","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.2-alpha.26+184f3c0d","@crave/farmblocks-hoc-input":"^5.3.2-alpha.26+184f3c0d","@crave/farmblocks-hoc-validation-messages":"^2.2.2-alpha.26+184f3c0d","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"184f3c0d3a49c40b4a735671940b0bf708ba3b05","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.2-alpha.26","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-zKNymzv5SOk2prjnxK9NoHL+aK0U3ACX+xjbpc+feo0QKOwCpIkUT9THRFioLASH50ZLtQN9F8xgGoHAYxlHIA==","shasum":"a8a95d60fca742e48de924a0bd71a7ccc0c6a4b6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.2-alpha.26.tgz","fileCount":10,"unpackedSize":66593,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcgpUbCRA9TVsSAnZWagAAN6cQAJTqsdIahHHwzVc1Oqzj\n5G1ajmChJh4jaIrmq/+z5cCYigcXGZkMgG/z5GJINdEKH0O+AWgbU7qoeKbg\n98ZvdsirARoP0/8HCEaE0R8+UpKlDK1Z1Ug/+sYcq5gNJFQnFlS13Gm9JB6j\nEjinF4cJDv+sXpuRgO9PRm2umvV7nSW5DQUGhMocs7gxLq4Wups+7EWmDLmK\nHuU7/TcZtcnAEVtjqYVGissZJgbVDuv5xs5Hsi4nLpThGmo7lj6TbvyLQ3Hg\nDemGn2wrJinRvWe+bEJD60CPo2PrbgXHgQDUWSljnaQNidFdZaMZj+t13U+s\nW65uL4dOrzI0p1+/M/wHXP1VINCdRY4Y7XKh3ub84TToAwgZ27OCb2mTFJpO\nqxdBjDJXN4fMigg0iHY7q4TKj8wQrRSQ7vhvp7p0ixFif/S5hKgL36HOfOAb\niMWbA+poajQZk2KCkd+AGSg/RMnmcJcXFcTnXrK8OUr19K6JgYoEH1a1pFc8\nU7y2PS/fZdVZx0tKTNeO7KiVvrVcAFlqUYpmSDBw65eue9SIcysTkd2VuDD3\nLYV2ZxDWQCAePaTpiCjMQAqirzTWQA+QNawirhYci7FUqb0XhP2MUQcsFwfQ\npEPRFRcy70HjsheMmSILpSR4GE9EzUS4AqW2Y7HZx+WS4m10QS9BZDaHG245\nIZr2\r\n=3I1o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCAYwMXZyMpbmHyWvBDWh0KShhrHHxblXZY9W5j+pXu4gIhAI+FdGB9VNt5GTIcev6kz9s/aaHyDMUU0DgUl3T6VxyF"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.2-alpha.26_1552061722408_0.5324471960751465"},"_hasShrinkwrap":false},"3.6.2":{"name":"@crave/farmblocks-input-text","version":"3.6.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.2","@crave/farmblocks-hoc-input":"^5.3.2","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"e8d65024129435d2cd9e52580a36fe51c8a10c88","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.2","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-EwbhqEKyG0J5Ub4F4k/MgpJc2m2wDrDl7AYwWC6d1Vwgk6jkuMBpUsxI6NHbaaaO+MaIforw3JEJmDTBTf8Ofw==","shasum":"c99e949b2c38be78d6d93d56035e16272d3b8178","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.2.tgz","fileCount":10,"unpackedSize":66741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcgqiACRA9TVsSAnZWagAAwGkP+wcE+oqpU3b667HwcWum\nBVAmOWXr3P3Msvcb0szxurT0GayFFqTLAyydEuIDw9ndqVH1ZTd04Q9XpqJC\nHRXKqas0QipsdSbVyT+nzx/gCFW8+TaWyJnd2eNBN4bzsMilEIqEI4T8W3FD\ndyDlsVxQUDyrhrQaNF1hQn1CpyOlrPmeQikNeTPN4tbdFlwWKbF3KYGry7mA\n6G0yT9alA6zSIb4AJ49tLSLMCorvZ8uSoi52czd8+AKqbIrRk1ZDwxQP2nxd\nqbzRUV28UZ4TPQoK/BkkmneqpZyXtH+zCAx+FiITS2niXiX+UGyTzM/XLWUy\nox7+WjoPSjNB+cLVeS6wFU6LFR/bWh5w96wwavcTpbAQrSSvDBIuDu5LvLcH\nTr2WRP102/OFhgfxjJX5FVPjJJcrc4EJi3UGNhBD0PEci8lbZSYupQbFSp/w\n6LAvLpATvY3UPH4bQKpe+z5Od28I1Q/MxSwyUlJYdb7beloEUpW9u7vZc0Ow\nPiOTiZMjCTzLWT2qaSlETuCHmP32EEFGUKlBg37ZT+IwYMdLvccendKIzDs+\nNGN0n7xP5SQH4h+A32Py4DiOjfdtXpIWhjuYgDybnT6gZI1HCLjb+jDm1SkW\nWd8eq/Jg7Mbzwv6i+TeSKUphp6hZpTSe2w2P2KS/KH0cBWW7/7ZYIjR1kFsB\n3/bM\r\n=muOm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbGHA5VWQ/ev8ozMmbp6ERFuv6wMHtV99yFfepV/B4gQIgBUr0pvQX9GQ4K/uGWh8VKRGHeDs+WV/oW9IS7jWDnWM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.2_1552066687787_0.9761516700201844"},"_hasShrinkwrap":false},"3.6.3-setup-percy.8":{"name":"@crave/farmblocks-input-text","version":"3.6.3-setup-percy.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-setup-percy.8+6ab5bf0a","@crave/farmblocks-hoc-input":"^5.3.3-setup-percy.8+6ab5bf0a","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"6ab5bf0a07e4ac0da59a68f0b67a50a99512af1a","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-setup-percy.8","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-jWmwC1qk4EKMU+0Zu6mbx5BDQMwW5sRH5Xz8DoCfREOMNijoBjTabN7XZf6Fffgs8ntxKXyxq3pMJR50QbYLlQ==","shasum":"9bcd9c31284a7812ada15181c156ea8801748ff3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-setup-percy.8.tgz","fileCount":10,"unpackedSize":66810,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciUZrCRA9TVsSAnZWagAAS+wP/iCI/e8w6yJTq8P3684j\nZbD3s44PVaPY7iqdoJu2gwfHV+2cZ415GsWnXTd0rtLF891xwBGgyGuPjgL5\nw0c1nC/axaKU372sXXnWlGmxcjEOtuHyuJLL128f3qk3TUqBw0i8tqUqyTr4\nblM1Ay2aaWd3ZHYrHZknRPJVAc8Rm2xodm+zh+qvQ+rwKxaPLToznm+zHW2J\nomYK+HyHtgRruUmDguuNltfpIgt/B4Z/ntZF6dmCi+4T8mD4GyjQRybI7+pt\nsRAprITOthaMcINtQOnuxCYP2P/MxNVYaBe6Mq6VUwzdyTA0YVJ4rlsdvqlG\nbDfWhd2Bs4m0ds1Up5QCn/7xFsBYCh2nRiPcjdqEMZrXW0gp9FCNGwdba7j5\n1o4del4/2N79XewkTwJibnYyfYhG6oVjE+iDwUlMIp2rWeS0EedZULA4HTIE\ndS7lwOafLaePW8U0dCTwip0YlBUJ8ng5X0dzjveR+hnO3AcXCgZ8EfEqZJiT\nhR092HVPvahOBkRplofgmdVIGEA34bVTNbD1G4eB7VyFlTNv6mILHrQST0gs\n1q33EHGAaJ4K5/T4YYtb6ktW6xL6n1wwqtTwXSqA76ugqd1Mld54cZG1dviY\n7OZ+gig92JH2H+SirQ4FNJ3FB1vPQjuRvU/A+r1AH86jM2BNYWS0UwTRcDAZ\nYy1Y\r\n=r9+1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBuhhZWQDxtqDQUjN+CZ2U0mhcKY8n+u0B/0gW7Q8zhcAiEAzod5oSD5NDjcQR5SPanabjKOOa5o6VMZ470sZX32J/w="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-setup-percy.8_1552500330722_0.7034560055951276"},"_hasShrinkwrap":false},"3.6.3-4208.1.8":{"name":"@crave/farmblocks-input-text","version":"3.6.3-4208.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-4208.1.8+381557c4","@crave/farmblocks-hoc-input":"^5.3.3-4208.1.8+381557c4","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"381557c41244c16c6f7cdebe365aeb20be9304a0","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-4208.1.8","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-jGdDObSzIlPYxXcePuolAp1V9sNOSX3DbvHiPII/ybP9vejB4svn+r4G9l+i8IJqzFM01Q0i72x+Ke3C7UtRvQ==","shasum":"c0f7af09237a134c3245635db78fda7c1fd55d26","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-4208.1.8.tgz","fileCount":10,"unpackedSize":66795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciVkfCRA9TVsSAnZWagAAWNoP/jHnwz4V2FFsqo3qIygo\nQclb2nY/usXjpZO+VOZw8c18TrooS0e2yU+EXmWTO9NQPRECe7/q6oYpGR0d\nm/t3DxuWb1+xKNkEimaROSOaCO1BfXHRXPGgnHzC+d9FQU1p+UEsNJ8n2okH\nAacHW+uK6AQzPWKXO4ytwV1lpsXD8oDW3V4otIxeCaG1FY+AQ8JxqnK5lLQ0\nxyH9LKjbp6RCa+dLybvgoj1FrHfv6kefz3odHqqtpxY83rSzqdpgNhiR4phP\nSh56nP0TybySiazQEw7SRQi5cv816aEHyaQQ6XrEeWKPGDLapkJBPRYj4lsm\nZVbFRDYPHQOYo7nlijYoqKmbEmvnNvBQxJehwtphBdZ3wFuV729yGfKGd1Mm\n+qH6DRqfJIWSn6T1UlNTeg4CNMpbWTq6Ie1oTJOPSsAMQTbp2v/WC1pLd/aj\n1TTZ6YLXp2Rx5DBiKJq2GjYyinFSniDBy7ISz39PpzSqTZbCHKkcrAPQ/ubV\nv9tpcvC0/+akTUxlhbC1YT/O26gNVcbbbCvLepVJQZx5QxiPzctnDUKMZH59\nJY3+iHsKxHN2AoWRBEXK8jiUfCnIuWRqs0n3xt8dmwyRCeoAHMD1w4iOq930\n+dYyvzJJPQqZ7fF63jwZCjoAO2Jie1a71fZR1mqMGqfyFBmSExc16U3qUEuL\n3oPI\r\n=i5/v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPhHT9vOK/Y2A2x+NCY04E+zZlMwf+THxYpj4JueGiGgIhAIBW/ACoCK34EgksipbAVhzQRswAnrE1dyiJvDDHZvWQ"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-4208.1.8_1552505118602_0.3729325614653147"},"_hasShrinkwrap":false},"3.6.3-4209.1.8":{"name":"@crave/farmblocks-input-text","version":"3.6.3-4209.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-4209.1.8+381557c4","@crave/farmblocks-hoc-input":"^5.3.3-4209.1.8+381557c4","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"381557c41244c16c6f7cdebe365aeb20be9304a0","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-4209.1.8","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-1PLMyp4vKVEr+9EdKYEvZZPNZFVgc/LJyU570M8UC+SYxmBAj8/v1JcnCqIBDBe9Y4M9nlSvTuh5U5dk+cijhQ==","shasum":"debcd33465eedc8c744d6bae4b89b086f8e52822","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-4209.1.8.tgz","fileCount":10,"unpackedSize":66795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciVk3CRA9TVsSAnZWagAA5ZMQAJrDCwMBAjoWarOAQG80\n5EVBztfj8AW7+YYIsCy7hRGlvdPODOa16naQxQfSYdmErKb1BousDZwucTt7\nrOR5H8XAfrlG3XWGQehogpsVWcexgnrfOkPlWS6T4Me3vj546Dkx1D2skP9C\nRBlJTWvztvI9e/0OOeP4x3SBVOx2QXrxbwBglWZGwF42YRzmaoMCmB+FlWV3\nCHLM3ziG/8n2HTPncVbOVg1mOn1Y83/TqFG+0d+cg59w5o61R01iNDG0L527\ngqF/+yiaIVDxYzCoZqcfr6S8lehln0IJE/vliwLtcB6yiHxXKNDljPyQO8DL\nzl/Kfmdmsx2sLs0ndafgycgpO6C93G0w0ZuZiFsPR2XZFOO1iB0E3AObiHYF\nIyqEh7hCCOsKubiLSV8UXiVZglm74yI9864cDBKqjpsNFFd1Zw8LirnANuXg\n5bXr5ycOn77vYUPf8qgbqO8d596COQZo4sJ3M/Am3Bfdayx9ue68d2202L8O\ni/oJDsRgTxlM7qOiaU1JAp99J1utvTRgZYfp6rMlJIrgGTJzPkuyD0JrWuGz\nN4JHL0qtrOTJCoDa9k/6TYHcLNXY/wTmS4X9M5jxJpkrnevboVMJY7EdfMJ2\nB7o7h7cFE1Qlwh0aD5FkFu/8wuGF82CqXilxBkKrVEjStBBPYsP6BYXVR5jL\ngODM\r\n=Yr+J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCr+Bl3meV0adsoXJUhxuLQPcq3+fCQGzCq5pIA56KJ2wIhANJoqxwFEv+12K6AAxDPQZvyrBfaVNpndpduuS3rmncC"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-4209.1.8_1552505143226_0.9201721705247743"},"_hasShrinkwrap":false},"3.6.3-4212.1.8":{"name":"@crave/farmblocks-input-text","version":"3.6.3-4212.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-4212.1.8+5104953e","@crave/farmblocks-hoc-input":"^5.3.3-4212.1.8+5104953e","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"5104953e901c95498476fd7c33bc1eb0f3343eb6","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-4212.1.8","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-rJBHw0QGMYBOh4neWWcfxSZKoDaYloNwBJAxwl55FiX2Ru4CrBxPXfseHf/YfTv4CjIB7SN1YB6E5h1onUEPsA==","shasum":"62e7a8184d51363b08336a31f388bf0b6e99d404","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-4212.1.8.tgz","fileCount":10,"unpackedSize":66795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciVyICRA9TVsSAnZWagAA0NYP/jK2oaLfRaYPD2S31eNV\nfUIIHJZBXC5GTbal1u9bmO+o4zsqqRR0tQn6C0rIguHrjSEEPBLBh3KnpIqA\nz9rrozP3MjXn9nOkF4WSp9yBEk/WrM2qQ9Q8fnCKVUuvyILCyx1q3+tTQ1Tj\n055ewYvALWngU9BQou7vDEaZB+gIBQt/9n+o6N6lmyT0PsXJ5uS0IJlIadGz\naReBj24zOP0nNjzbsaewSiaFSQS9IGuH+LgWjdtzSVoWZizGI5QktKUvkITk\nLGD6fWyMO6DKNBDe72WpLd5aq2VaBa35CXE3ZVgar1T/m9aLZmFM8TwKWyi1\n02hzTxLnd+t+ahCYLglHI/m7Bzoi4l56313VB4ojTHljGE518GEG6xKHVlcG\nd0UCm9gY+2jCHwCMD9HiZSCS40sD1H9y3k3VTfPBuk0wCPB+GL4oq0Riz3HZ\ncEhgIPfJLjAxqEVfxHzmuXZgXN8kAQwVRhPA4XtkmOys1BzYZW9TQ45M9WfR\nCnAveEPSxj3oaFZXC/tUK2R49FV514YoDBpKyUKWwD/1Ns1OSsiRfD1JMjg5\ntMl9Whag+aLagKeqb36f4+fXHKB9kgkYhHmKfm6zWAR46shNoEFuQmuWFTkR\nx3GEaDopDM2WNm86yVwxatCAShIfZgYyBGv7lEhTDx0zQFam6xkdp+DwuKw+\nyZ0Q\r\n=14uO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCw7Zh2CT3RJcCzeaJmQRilpwQWIuc/7B/a0ikEU5BU+AIhAMVXizdMZuOvIE1qMLIqyDa/T9BAhGvwLljbAwNwD8bG"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-4212.1.8_1552505991913_0.20178110559328566"},"_hasShrinkwrap":false},"3.6.3-4211.1.8":{"name":"@crave/farmblocks-input-text","version":"3.6.3-4211.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-4211.1.8+5104953e","@crave/farmblocks-hoc-input":"^5.3.3-4211.1.8+5104953e","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"5104953e901c95498476fd7c33bc1eb0f3343eb6","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-4211.1.8","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-lFLisFlaf+Be+33y3OZpsvFLCZkhln8v6tPqAuglxnMiSJPVNP4UuE1nppYp8JdeJV6O/zxqrtvQYDqsXUCMmg==","shasum":"914b793a84af25a1b3b7af867a74c11dabf31571","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-4211.1.8.tgz","fileCount":10,"unpackedSize":66795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciVyeCRA9TVsSAnZWagAARPUP/0w41Hau2Zd3gEk+x6Q9\nygJHN91exoL43XnoR5qXD5ee1vClgIriuGkgl4R3C5HjU+9FPFS8guxXIGYO\n2iOEQKdSVQwps/UQJzu7vCecIKVp8o80J4Ji4WPoFXdPxaMdk9KczmJFu5VJ\nde6kSGC73PgHhn6pkV9iLpz+m4+QCeVseQ3zN+OZaCk/XfnfChUnzY+hb7Sb\nlwDoVolpiUBnvHBoxdalhSqEKZ3T+kkImkvdf3df+lYqNDha7D7AmeFEL34c\nadJTvqsHjNU9bXb+MAj24bO9AdsRDi4sS9KRZk1NyBGC1/2F6D1r5zgmd/kD\nPMH6Hh6ubwM+2xHfiitZJ6sqOeI4PpmD6X1PCkEuINjGla1xA5IOnDCGB7L6\nTqLkptwZZczHg9HohQ6HSuD0fIFf0SM+QGQ1zMfftyJTNvLzQpaKeb4iNZJW\nI2E07Q5+3G1HJbaEq8Hi5ebasDYUzI/ktmx1eWFm3hDTp4+Z1SJJlQbTIngn\n4cbeSWITuXJVd7IpUqr0RJlvWcGQ45Sc17F3ceZ0GbgClypFNK+ETAWlD8Y9\n/FgKMUi5edYmuF8v/c0iE9JTK9DpzkUgkdXu7ZYhIbN8CRRI/fSyTobQWDgR\nSt6xZXzbD4uMKxrJCjnFQXsnU8qzVucyMkDYMJIXn/BQUCkjco6oz+N5ERj5\nndgl\r\n=aOKE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB5GCReloicsVQ6B4Lay2bvzy4UQ9vBkaEXn1TPA1Oy7AiEAqnXjMN9JQZhl6bju0rD8mmEMjc0cFKowf0MDmzgJBTg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-4211.1.8_1552506013538_0.8644999125010107"},"_hasShrinkwrap":false},"3.6.3-alpha.9":{"name":"@crave/farmblocks-input-text","version":"3.6.3-alpha.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-alpha.9+7ab5e1ac","@crave/farmblocks-hoc-input":"^5.3.3-alpha.9+7ab5e1ac","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"7ab5e1ac0fa100bbdac8bb0a811a180ab977e838","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-alpha.9","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-8NfnHPedyiTzj59Fj9P1yHjwyZ5x3T/C6UXiGN1956vJcpty1pDS3wafGYQ4r0TiYgxyyAXke2z561B30/0iMA==","shasum":"8481a72798dcdb7aca5eb0e3fadee20ae4c1151a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-alpha.9.tgz","fileCount":10,"unpackedSize":66792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJci5tgCRA9TVsSAnZWagAA/rAP/R/q7jBorA9puiI2w4il\n6XSQPYGwxVqtYl0u62vT/uci8WeBDhECQvnnpxGMFxScxfvC5wEdont8qvIV\nT3DBrNByRoyicUfxFQJ3tjtJTdSA0IdXKL5WB2zNMRallrgqVNuFc13V+75y\nl5zNGImdb9nxumSFQPNrvWQ2LrNv/abXbIVhifkJ/mvvI/6FIurl6mQQKsr6\nRoxSiKDu4gtaMDXB5x2tBkKyNu8Zat1YeP0E0b1fd6encmpwNb9sk0xMIzK7\nm1tyhtDlBtOiKRwKKLFktWkOSCKYYEjDqa0yDYPyegQr4B+sYWvsEALDqAbt\nuWjvR5SyT9IO3UJJBa9E67vJXPsMzN/KToubvzwRSlDvN3UIy+R5sn5rUF5N\n/G8mylZb5VLx/LB/sf/HSvOwEjCRS3hnSHvFzw784RFPuPSEzWPErPMEoBWX\n+AvXFg6JRxn6e03p90jp6nnfXcVNF0NZz+P64MVb3JrFWYXHnwYn3L9bgYcE\nFTqzEiUSgi2m0jf289ENQa8Ok3bPOLb6o2pkOx7PiF9GvD3sxtOVD0CCoKGZ\n9c8n+sGduPw6pJyrT4PQ3CXMvg77r8hniw486U6ikyYEYRXCpzciO82OxL6V\nui1gWlef/I9vKI8nSWU9hEfwfm9w2yRohMOMVvSZQfN0Q1l2pLOls9aPJrgW\nMVq+\r\n=88k6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFZCOWjqPOuqo232fpCqZxrMSnivN7EKJ1MnPEZN0mAjAiEA1klkHFAH2g29YQLEewkcg6LkZdOs/TMKukF8KgcUANk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-alpha.9_1552653151610_0.5844262854001772"},"_hasShrinkwrap":false},"3.6.3-alpha-percy-andre.13":{"name":"@crave/farmblocks-input-text","version":"3.6.3-alpha-percy-andre.13","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-alpha-percy-andre.13+978112b0","@crave/farmblocks-hoc-input":"^5.3.3-alpha-percy-andre.13+978112b0","@crave/farmblocks-hoc-validation-messages":"^2.2.3-alpha-percy-andre.13+978112b0","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"978112b08f58ba075f78492837aed4b87c6c7b82","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-alpha-percy-andre.13","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-d9difgKfMF7pXBIR9BU3IGRognr57/WCki1Utd51lUN4HspdjsiN5o8FKAtHEWFZ2dJ26j0/eT/AlmemPNMlJA==","shasum":"15daa4e9b80d945cfd882faed1de08d14a71fc63","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-alpha-percy-andre.13.tgz","fileCount":10,"unpackedSize":66861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJckAk0CRA9TVsSAnZWagAAtuIQAJNg35Qpmsxny4Szr/tz\nvzzpEJW635pg3xuqOhDYri+2a6KSTuo6IeCQsQgvCEZgD4Na3rWxZQ6XGrJ+\nHcMiEjh2uYKFaoTbJJxTIJ/Mf5+R0JLEvPrqwmeFCkm9wWHPvysakaku0rz/\n4QhvFN1S8KuInFj+2BpOITvBP1/WPf95FxrtTpW7qRI/teUop8OT3kFXwTgL\n2YcxxxLTtheN3xaWWmaFHnpKWRn5n/oUkEu2ao/ZaXE4KLHnrsS+1rAGmvSW\n3xH/6uZnl5/M8lHEMm8WOyTXGc4hUvkJWimL49mdLLuDydzY296iPFdNRlb9\nFqLLXzs1LhZR1SPyQXKPXr2+LcZ/7jkGvHHYQjXm+ObCjNdEUTeaKiakpAmU\nYyshYWBSvELxvaxGBgRN79vS1HEQf9KDFypBQzV560ZxwckkjLkD7mh3Mxwm\n/VkiqMM+w5TaLSo1oEipB4/DuvacvBmlzGYrDkY98TfKOCZtyTuruQvn9v77\nhJzPZE/+3oiP+pe2fiNqwptwt2YxHVThfl35Ep7GeWSIOlTb6evykidh04sS\nRqNPEBj3wbS1H3QNJZZVnmCW9M+zSBKBxKUp2/t+OaIj+4ZpDlhrcg9ivBxF\noIMFteaJGyfVA9yAMWRxvq0Ke96KWje3x2/MRfVFdJqJ41jH6avNQlsniY+U\nOsYU\r\n=mFsJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFK47UmUKIODzm7rSMMAkSZkRoWumyN8YW7i8H2XoHYzAiBvbUlbuzcgnWndeeyF4zkkHNdSlqsZ5M7JhLLnY53FoA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-alpha-percy-andre.13_1552943411811_0.8354253351282372"},"_hasShrinkwrap":false},"3.6.3-alpha-percy-andre.14":{"name":"@crave/farmblocks-input-text","version":"3.6.3-alpha-percy-andre.14","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-alpha-percy-andre.14+c37a3600","@crave/farmblocks-hoc-input":"^5.3.3-alpha-percy-andre.14+c37a3600","@crave/farmblocks-hoc-validation-messages":"^2.2.3-alpha-percy-andre.14+c37a3600","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"c37a360060bec1979a829c76bf07620a365e3d1f","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-alpha-percy-andre.14","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-mTsS2WOCeBqGci9jIV+77VrtyoQe/3VMiuknZ+ExZerJGuAFr7pyYnR03Sks4QJvTTBqGT0HG0Rm2ZBw/ECMfw==","shasum":"58abee32364f04b7ded207f3f76644bc9efb2bd9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-alpha-percy-andre.14.tgz","fileCount":10,"unpackedSize":66861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJckN7ZCRA9TVsSAnZWagAANBsP/Rxr51kMDPDyp9tZOa8/\nzsxEG38v5dxbAnWAfRAruBVfNQR6ztGTNyVsd1bhVAe+jvQt3YV52E/dQpzY\nVxLA96uN/8u/do3trgwgec2Xr/KVbd1tFm/vPaSlgs+tqGITyDH6W/SDTduP\nlog0hMxrwl5ajuKJ3l2xcmDAhjUNXWoN0LguNoJYWTMqcGY/VV4XLR9APpD/\nGzmCo+YZ5h3BE+EXmVL5WQd0QH/lyNGMTScDqbUPWTk4tfNgMhxSL7cJDWDK\nIGyaDoO+SgUwuxge9QdG+UqIo3iDBfwE0cJAnNNN4F0E/1tYIlrVQjEY264K\nkEDGWyLdaNxd+SYpTD9zSC8sWA0dfJIuGvEMzeUEWtlogCce1RYA4CnBRZ8F\nDZxFjFv4MG5eGuII86Piqj57HiN4gYmHpsk9VjMdY8lYreMHhyq4mNwhcz0k\ntZAGkd9w8IIhOSzyPAC63IkZiYbELNcJfsldX7bU4SIHmi6/1YzS2NG0RIfc\nD/mnu7ofLZqaWZjyOHYxkRF0R1nFA4apmqtZOw0YVf+09Zw2ttQvvTVE7eT5\nfykUXIEQItu8yCosG/pgiK499V1dWm355gFSoN4tZWL+fQiWnrEg7IBR0szQ\nIIKwTS8CUkP1dh+kXkrqqNjULNCFNsFIqTM1hD08n06VRzLMsOsMv0OIiN2t\nSXKV\r\n=wZf3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICFXXF8+2vlV1ykM+GoOQ4Sm3sd/psuRmnYhbYdCvPGaAiAYhKSRA/N8/O1SCvhAi+fgHPf3/svUbtAd+GJUzJxOjg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-alpha-percy-andre.14_1552998104825_0.9893918375259285"},"_hasShrinkwrap":false},"3.6.3-alpha-multi-select.19":{"name":"@crave/farmblocks-input-text","version":"3.6.3-alpha-multi-select.19","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-alpha-multi-select.19+e3c075b3","@crave/farmblocks-hoc-input":"^5.3.3-alpha-multi-select.19+e3c075b3","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"e3c075b3d1913194909523307f39ba73e389119a","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-alpha-multi-select.19","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-qsf14XYnEyAwLsXNQDe5Fvb5oaKxhF44bobb/RZvRVJf3nPFqdJK4knQEPUUa1+KvzehFEuMWIL7cAghqVpvqQ==","shasum":"9747f05aa96bd2c87f701c5fb70a55fabefa31ff","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-alpha-multi-select.19.tgz","fileCount":10,"unpackedSize":66834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJckUE5CRA9TVsSAnZWagAAuLgP+wW7VUKJUmlPy869uGvB\nID1/iKVBt/viOsakd+uu/f7DLKkHnyj+zFArE3Onn42HX7x7zCf1EAG+1CCT\nJvM9k+ZkShyR8ixAZGb5zcb/dcy8ormRY3gA74PN2Fivmh/U2rh9OWzPyrEx\nywth6zGSjH7QJTeawDJ5ee9gNIgbxmrVZzfaM1omB0thjLns53BIZ91bf+hA\n4iY5SWbVE9xCzJFSvvFtPkO32PgHqKSeaK9BLgQELXUOirLspCTasxuTTQie\n6d/DO7/Rrw8AwjHMq8IRlFpkWFXOoD49stP2e0dnWJiF5M3okVj/j1fbotEg\ncIMd1DHwqGehUeyVTtL6XFDGQP/kh9/A/WkEHHD6aYaVxqLC4izeUzE0YHYV\niRZHd8nj+ObXBa2Kj5O5o+AT7P6hpYEYk0Zfvx7zwt/dDd9wiXxzPynNEzCT\ng2W1xVJM2PZL8uQgoPy6NMMRRk/OHyNa9ceIn8Cb6w4TB/zgl8RyFtPDC0Ik\n1JYylSKrQFqjNfNpRh6HbsCP1t7NBa9N9Xv3p+pn0IQTfjdJY+w6h3gg44pm\n93Eya5vec7lD9YfbDIyW9TrcMJCIbjNnQkbKftEGPgnacKhq0OZ5x1yXE7r+\nIuPMTR57WuBHfdOy9EvaaWUPVDr53gMeeIq5aeJ9cb+4fQ8+SMKXrvP2ozyG\nESue\r\n=998E\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBz8twUFrgNDlWPCe2Nn3IOc+CnVtgK21SpOl9QH1muaAiEAv7D4c39oKStiqEXUodHiZZEeGFjtsXNFL0vYfn9ozEU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-alpha-multi-select.19_1553023288653_0.28691602144642925"},"_hasShrinkwrap":false},"3.6.3-alpha-multi-select.25":{"name":"@crave/farmblocks-input-text","version":"3.6.3-alpha-multi-select.25","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3-alpha-multi-select.25+4519a5d2","@crave/farmblocks-hoc-input":"^5.3.3-alpha-multi-select.25+4519a5d2","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"4519a5d27ea7594f0b9b2ccde1b0bcccdc7b3411","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.3-alpha-multi-select.25","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-hQ7QxYdCmqk+ts1vLR4oJ/xaXjXhUG0jXbwN9ruZ9n/BtX92chwkCP/zOp9i7mVdXujT1sw4fzQcAt7xYUs6fg==","shasum":"7f967ac8b33f87f953a225937dae33c0ed087486","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3-alpha-multi-select.25.tgz","fileCount":10,"unpackedSize":66834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJck8idCRA9TVsSAnZWagAAd48P/089SDIRLTts152PfVMv\n9fS1BuNsZt8HYwXE4g6lgUHlhyWmMcTR1ei9sE6i+n7iV77ZuU4ZE2mpjqUm\n0kK6POfSePaOG6thMVKf/qbgwsJ4ekCxlNmUWKq4TneCnzmjnQ8x4+740OsG\nLcoXX3mYM/4BM470xjIiseK2kFUe4fS9KwxNHBdqv6rpPGSCymxoxeazzmMv\n6KhF5tBGBO9Uu2OO4MDKvCQqUuuOjIcBuOMvV2p6iihj7e6UKPDRBBPY49rW\ni9QvD/bqnD2hgP/jD651mPhbGDfwLTZMjGzGwTxdg/ursf1NPau+wusZnEK+\nVQC3o6ruQuE1sIyg64Zt1B8p+mz/xSvwj2K4ZNRmGlsWMA2EFnC9V/g9poCG\nA4y86e8qVJ8XHNu+2UmFSwVgI3QSTzJztAk0eitc/HoBPpv7tjuph0wFOzDK\n21vfwWPD75HZKbBFaiFisyp9bedcaT/KDEPLTSfpEFL4kxw3k3hgPHLuft3S\nI5DZuw0x8bCmLyKZ2YwhcnM3ZI94gmNO1saoXYTSJnnLp/8xtrlJqV7bUKql\nZ3S1m/gJgkm0FSQafI4TEZDiYNGQEGeQ+B85fxUXfPaieBd9uyTCEu6SCWxJ\ncI7EyXqVCY50cjBkIWx0gHSqdsdWUrKF7WAcSuw6i/OZvFE+UKsih644b7dZ\nhjEr\r\n=jjSG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHuW30qMKAOOplXmqvkCpEj6+oTxevpDEqWsNz0VguXLAiEAnqOuCxWpdDQceAYg6UraPnhn82I6/1qGKyw8itJCxwU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3-alpha-multi-select.25_1553189020174_0.5385393143404031"},"_hasShrinkwrap":false},"3.6.3":{"name":"@crave/farmblocks-input-text","version":"3.6.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.3","@crave/farmblocks-hoc-input":"^5.3.3","@crave/farmblocks-hoc-validation-messages":"^2.2.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"8b6552d219554ed3a3747d01e8a7bf02e0156988","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.3","_nodeVersion":"10.15.3","_npmVersion":"lerna/3.13.1/node@v10.15.3+x64 (linux)","dist":{"integrity":"sha512-87Os7gtkGG2vStAGwhTTr8xT7a+GwVuvZifD37cv3cFsUgDajLANrpIGS/crg5Mqu+oiskfrDLjSjidkRrN1ig==","shasum":"2e475ebd28d7d6d138aeb59bfdd1f40fd5617a09","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.3.tgz","fileCount":10,"unpackedSize":66961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJck8vGCRA9TVsSAnZWagAA0LcQAJk9rU69LmZ8/GMEX5as\nN3qGbKnToCg8uoBDsjwDV6b+j8TDaZ9ZpB7hrFVzWHb2mVZ+5i3AA4gcSg4b\ntkVXKCer5ITGXljpsTXsx8/PwRkAVm3nLIsnjpeGKwOBU5GRL+xHZ3v6fss6\nhlyPFVTbgSkfwJ6ZyEG+m15OtdUtOqs06SsDBjRdKCwGrM31BMJyMUkUAGKc\naTpCjgK7m/wiBp1WSKaMae7MwrMBR2CiagPgbsxlouFo2zZYdRFVwZLM97yL\nVpBRSaElLS1vcLITUaIUjthTfGW8z6gsCA46e7sY93x00Up9EZoICwYzu7f6\nn+dmKpm8EfK71ztvKCKABPZSzahCip6gDco37dyAsBdE1+ykSEm2HhD3uOyu\n5kpa9/8CQTFPoaq0Gy4INfibeuC24HdkTZyNJOKJAeCeJe0lOWKV0sARbGXn\n8WsgOAogJFyESIod/b1Fh34gojoG71PDiJywOTFTJOzcXxgkZbUlt9/7Hfrq\n9O/HJR4TZ8wkyWAP5SJtn1lnfFxzo23MLYzp57HIhl84HunJcUYmRX3ieGq1\noKYZODJDBOLgFysOlBAwt0tIkL/4fRiZbkzktEfx5u5DuZQdt3YHoQcclnYu\nBEz2nsnN1lFJP+xZWHGhLsE3fJUam0emF3y8wi9pudtP6fvdWCfjj7cA14cJ\nJkWI\r\n=I31q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICEo3OL+i7cmCHzYGCmuW6rFb/nbpIeCBGdq5Q4+fN5rAiAiPopHy2qWItiWu7f7QHDtqaAymrR+YdO7k950C302fQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.3_1553189829115_0.8446265799454227"},"_hasShrinkwrap":false},"3.6.4-alpha-storybook-images.12":{"name":"@crave/farmblocks-input-text","version":"3.6.4-alpha-storybook-images.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4-alpha-storybook-images.12+887a0405","@crave/farmblocks-hoc-input":"^5.3.4-alpha-storybook-images.12+887a0405","@crave/farmblocks-hoc-validation-messages":"^2.2.3-alpha-storybook-images.21+887a0405","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"887a04051ba39e2ef43d9efcac2386bdf5a9afe5","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.4-alpha-storybook-images.12","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-WFYsr00UhHLpfXSJKTG5lMNpdyZrv0Q+cDDi404QlC8J/0NPPpKvwJq7X0EuoW9QlUYv10BVGFXXUMLPhqzGUQ==","shasum":"269f4ba0566c2979a5fe0b63ac80aedb15301713","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.4-alpha-storybook-images.12.tgz","fileCount":10,"unpackedSize":67101,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcolerCRA9TVsSAnZWagAA/isP/2rfUk4qXpDD4w9n5Xjt\nP4Gxdx3HHHPjfUz9oOTuAqUFe/Iqf+LK1NjpLYvZ7Idw0bPW7eu/IlDV51HB\nJOt08Of54wtuiGtIxztgwUM+SZzSmw1StH4A6rUNZqdJgktN//LPAMpN9t72\n7BT+2tStY0eMukSCxk+hoPcPqsBcelHekXquyviBEEoZqaHRLeBEgxPxQQXd\nqJI4JIaTlhmWQj7mc8TIyxUF2gq/I00EMfInrY1JuD/acPb3xCPIxRbnWUcg\nyLf1CQovWy2ZX+9whEfLzM6tP9pibkldaixH6JUtMFrhKropTS9kDYJAcXWd\nXvtpcCb6e6jNtkyRAmolgFd0jFp5Q3HbcuHKvn73xlWd4TydpATVFABJAf4i\n6jKESFpEXCYtcaYOfrzbksFhd6g+G4QjCszGzxwD2egSSh9VyT6KX8plZciu\nxlCm+B1Mj/d+OEaOn+EDd0dsvdRq6V9qPOIB6FyT0dbAOj+1a60Uxg13xO+6\nsaBZC3iM6lXLywFYm6dvQ52IUT2Pf8hVuGftHXwBrqtYpo5Z+aPyRJ/ODYk7\nyB+567Yc7UljsU3u7wLC09lks+90sHSkf6s5DSF7gltdYHbVjQHqUbhaptp4\nFVz7+qO0VPHexEFRa/ra5GDVMkny/0yYiju8OV6aYJsUs3VMWZmzNoM61TAf\nGZBF\r\n=GjG6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDC0cNhcGEWcL99eZzIKz1MJtr3404Y1R9Lpo0gfOE0pQIgQ+Rohmnep9nQmi2jLAHgdRC7lmoRbIU1Ah3yKGZf1wY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.4-alpha-storybook-images.12_1554143147238_0.21999310295601182"},"_hasShrinkwrap":false},"3.6.4":{"name":"@crave/farmblocks-input-text","version":"3.6.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4","@crave/farmblocks-hoc-input":"^5.3.4","@crave/farmblocks-hoc-validation-messages":"^2.2.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"f8b6ed3d651f95e2b4bee780a244c409feb5a7f3","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.4","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-LaQeHw4kkVewEpmsh38M6ErPzZySXBx+ZBmRKYoDKHE0mhgdDB3UzpScENqTBq6T1Kqc3J8+pIG30Ap3cJYtuA==","shasum":"54a9d2e183643e8a9d666d0e231995c60e524527","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.4.tgz","fileCount":10,"unpackedSize":67181,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcpLqOCRA9TVsSAnZWagAAHYIP/jU8iaebGTQc3xNOSjr/\nSLFJN4Ig7NTXVSwmOrOe7Lp0KVATM0M2QNDSNh1geE7NDqBDN4Ke5plVLlty\necE6lpOIM1UBhnyyP39ebC6ksJtM58GgZAlZ752ysbyF9wqD39JEIk1QvrQK\nMekQKBYasLdDB6ovMJwhvAh1I/Y3NkWY6pkY9MXpKTX5GK2fXm4gNeA2vdeL\nMH4V3gMH00DCm459jcGAaEvehwlua4zPuKN9vIr8AfLOxRi/bC6GAv7gwgsF\n0mpXo/ZR1LTU4582AxPp+GauySlRqDymsF7BruZKKr3kq2X6WE9I2v75HdvO\nMoP7ST6FRZzko+uzrzgRBqPoidDqdHSYgiE2/iHqdmnDOcnvqpjexxDCb5nQ\n9+rzEFAPnGZb0YEOVFxlIptxXomuzAXId0Um8P3gm1q2vYo3pHvrMf+l42Fo\nB27xaHpFoQ97q7Narh7VwRYsepwemUTLMKfumIIBySEe+Dm0JwW/2Hb5wA+w\ngODkDDhXWeNPT2A1r+cYaoMI6GQY69DZ1rzKKWrasllh11sWTopjtFXvvuRO\nm02oIwe6DYr/dLN0EH7/unnTez3gyIFbsu4xhkyYxbTyg2+rwx0YJ9z7KV9J\n/qzypahntFakaog/hWhZD/xrqBajdPaMSZjvIerHimFL9JbABoNi9gi+abKc\n4v+T\r\n=WULo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCm0IVNO+blI/RWi8YPKLVFzJfSlPiqZfG7T/q6AnNKJgIhAKXpCSEfPtXL0+MtNtf0tQ0tILAZ3FIIe9Z4ZLPG5Z20"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.4_1554299533946_0.8443043107883192"},"_hasShrinkwrap":false},"3.6.5-alpha-form-wrapper-ids.7":{"name":"@crave/farmblocks-input-text","version":"3.6.5-alpha-form-wrapper-ids.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4","@crave/farmblocks-hoc-input":"^5.3.4","@crave/farmblocks-hoc-validation-messages":"^2.2.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"b7e2aa1932f12c8bc063afc60f3245a25a3c5cc4","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.5-alpha-form-wrapper-ids.7","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-/XG/+p0EbuYAeOVUhO88H2kWSg4AXGI1AltLdn4maVZ/ruX4Ue/AffhK+kkmX8SXlI+qfeRSmbK7XlPWbibinw==","shasum":"7d4f3789c013e2eed3dd0965ba227753dbed45d9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.5-alpha-form-wrapper-ids.7.tgz","fileCount":10,"unpackedSize":67215,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq6fDCRA9TVsSAnZWagAA5oIP/in7Ol6kQm3BVHI3MS48\nCsobCBCCZ8rwEXkMz++05EC7CXaGnNixF0Zr5x8YfrnsaIgpLX5oBsKSVGBf\nuoKpGvxTtixdTTLQtnj1I0WVzE9KdHTVXOuBYG+ZYjEF6XxLPTw6AeqZWgkc\nA4QMC5ueizk4loOco13XgQOwMLK1QgN1e7cjyLvlGBks0mFrGy1bxSNQvjsT\nGVbgoorPOoydRCbav1slIjT1VtEUv2TRqubQ6WQ6w564lbo4AVDdQS7aLyBx\nuvLGKyR7yheWJ5804zo+UP2PdzgiqjUUj5fcfzJzTJFUjL7ML0F5OEx6CNP1\nZ53WDO++/ijhqk/WgsBXA25eGYLpc785QkNvmmxphYZTDcq7e+lKOUcgXiuU\nE+Cy5mgFOqIgWmTbFuaqgNjq0KfWMi56AEIsu53MdgGDzDGxgx3sGm0mEFVz\nkqKQF/NZKSmvGjbW0cHP9ldAzKJECOHazuATds1kF5CukK+Tuu83fzGNrPgH\ne3NxgRtbJQwFk4nLy7w0R8IQef7MwlcbNO6MaQRy5TytyMazf1eddRBjg5Ko\npmBN1mQf0BXcMlQaHXeqDCdJPvq/+jy9M/U4VFqvRXLiYlUhkAlgxJ+eeYXU\nrcxhZNdeSsFbPB3EHLPLatEjOyJNtj8isfhfOeP0DFO/jW5MWL8ooI9nqfRT\nlv3M\r\n=Ibe8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICYEnfgUJp5QTdOSWz6slimjBPUOoIy94cjj40vjnq/kAiEAtdxHB5+pLG2CsQ9MFOU0yLHGmevTixNl61l/KVEKy30="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.5-alpha-form-wrapper-ids.7_1554753475005_0.1980243798079666"},"_hasShrinkwrap":false},"3.6.5-alpha-invalid-prop.7":{"name":"@crave/farmblocks-input-text","version":"3.6.5-alpha-invalid-prop.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4","@crave/farmblocks-hoc-input":"^5.3.4","@crave/farmblocks-hoc-validation-messages":"^2.2.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"af742702ebdda4ef093acdaf8d979a655912809e","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.5-alpha-invalid-prop.7","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-EeW/5HZaybGk/Qsza+42ctGufNiJ2G1ffv+d4HVww/E7MUy70CJeDJXa2PUdvaqqDxfmNzMz20HcLAhmEtD4Bw==","shasum":"858f4454ca1fc329633167ab24177dbaf0a49b29","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.5-alpha-invalid-prop.7.tgz","fileCount":10,"unpackedSize":67211,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq6goCRA9TVsSAnZWagAA9RgP/3yB1IJErx5v6Yt7xdnt\nHzfdgqPjWi6svZcLqlzxkUIlSVz51V1TxWXJ2CYij1bYZXXAoqln4o1P3BNm\nqfWMxOGeyN9iMS36fEKiJ+DohZoEzC0hgNP6DJc9jPPw5JckDNMdVBwqpbF6\npQMaAwAP3NYJN5XCYYIXd3TwJMyjGnoeB0nVYxxK3JM+7YgHwKVHBDtRH/No\nlN6/c1fNfiozWBLOsqwQ5siRygK/1szoGUq8FPbXMRaX68aMabr9nlorQei3\nuVKDWmUXyiyAsDQmUh9YhMJr9yKIb/9x0ixMeWkZfVE6ofX569ZAXXViWWJi\nk4dLDcVUxMs/srD6M1A3BAnoiuVqiCdbzl0PcxMOoeBbFtdl6J8zjLeDvfyJ\nvwYUzhPeX7sBBU+XFQCnMsgUkSeqHQueWHPDWM0EmP3m7jcJA6xuvPxSfrnx\n0wKa7MMJ1kiPiamwFdiaCAXsV8LFONe0ftGi46+Bv022OSjyEPs4LZOLDYZu\ncaahdAFj9GA076GY1JLlKbwlH65SMdzDwB7H+iM7DLLZU3LoIJsbcFo5hvQD\nMvVg5wpAiV7KaLgv3qbhy94jq9HfpHCPhNYqmeoL7x3Q46V7fkHxfnZ48s6c\nprmi70W7YrBu9fpptQKPHqZnxeJFJJQJ4bG4z173c3fapgVb9/+9uBfMdvmQ\nz6cM\r\n=lLPV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6GOBbdkpGzBbHtpUeNiiLA0zZTY8rWt53f/kdEpW+bgIgP0tRNmszCMeKiGQBj+qU068IAPtYTLZjZg/u3fqhf1Y="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.5-alpha-invalid-prop.7_1554753575681_0.7892208365533846"},"_hasShrinkwrap":false},"3.6.5-alpha-invalid-prop.9":{"name":"@crave/farmblocks-input-text","version":"3.6.5-alpha-invalid-prop.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4","@crave/farmblocks-hoc-input":"^5.3.4","@crave/farmblocks-hoc-validation-messages":"^2.2.4-alpha-invalid-prop.9+4285876c","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"4285876c74a558f6a5d7e79ff3d0d062263439e8","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.5-alpha-invalid-prop.9","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-nau6lF5si0QdruUcMXIRZDKINoFD+dFMXKnGdx0qmFn2TqVyt5BdIEulpZllhkWnsST2YEfAeMWNRYTlXN/Ldg==","shasum":"366a2c6525a6b458ab441c8287e6db41e53d1024","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.5-alpha-invalid-prop.9.tgz","fileCount":10,"unpackedSize":67241,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcrKCSCRA9TVsSAnZWagAA9o8QAJ7Qc14kJdXbk4CV9HI0\nbLiL+TRuiLiaIe0W6OVqmZ5e+C8lk+wyH5UR5gZi2Jk3Z8AhtqAA+5vFBolH\nMtmNtTMEHdK5yF5cC+yVEfGDJxaSSbIvVVLpq/tigvGkk7cK5ZyiTQq1YxGd\n7HeAV0ETMRT+xYq/s9/wDDzK1+wCH21QsrUX4Sb5Jwx9ZcRGCyAXbA2qofwx\nVwzmgYsAhUNIrqj7dxxDH7NyWyPrcvx/J3GRoxkKNo5do/f+KoLn7XW1NwVx\nLvrwMP/PZn7g6G+shq1vsUtT/lnzKqluJdVyQk0KCu1MZ3GfJd13wlO1BcHK\njojEkIjMYrKp+B6403sMraJbfOJvSonVxa0U5HI7kAn4W7sLQUpp6So8Qt7y\nadNlTcvRtXn9rQYXQ1pSBu3/8Uv7ASSoj6vfeJNcOp5IKAcCxMwF4J9JFiV7\nbfRqrbdnkKx++gCP26RypfX3JirOpB5de2rE1FePLEwnzDTF0sLA6cKoNXXn\ny7bcDkewK17XtPJTNYBv5hPPN2burNfDzkKQ6ayhwxR2QHnFRxJYxnroaTjj\n7B5+c5W+yb7ucRefL0MZ8YxrRx6EOe+kTzr7pTIGr0KRCZTx8d6BGfYm6R8f\nJ1zbh/bQf7jMRRburC4TaPGVbYroZ8Ag05NoTepF2jK/qBX+4zBSOXxShlC3\nx3gY\r\n=4As3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDREP+MOkaCPjkLrykw4Bkbg5ywb8nTAm43KTcYvWvpRwIgZb1+e0LiD2G4X4vbx8TLXhaGxIYKiWd38PT1wHgzVeA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.5-alpha-invalid-prop.9_1554817169472_0.09727103970584006"},"_hasShrinkwrap":false},"3.6.5-alpha-invalid-prop.8":{"name":"@crave/farmblocks-input-text","version":"3.6.5-alpha-invalid-prop.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4","@crave/farmblocks-hoc-input":"^5.3.5-alpha-invalid-prop.8+1ab0a24f","@crave/farmblocks-hoc-validation-messages":"^2.2.4-alpha-invalid-prop.8+1ab0a24f","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"1ab0a24f0b9e4c9422e72c3bcda1683157bb6573","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.5-alpha-invalid-prop.8","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-z+3w+efoNlD1+I6UVBoGsMJEgvKlzoo2kWzuhjKbH5fuNaTufGwSknjazjkEt69iMZjIm0W4ISv0c+ynVeWOwg==","shasum":"bc7620e3171bf5d4c4cd43bf20eb80a94797d468","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.5-alpha-invalid-prop.8.tgz","fileCount":10,"unpackedSize":67271,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcreMVCRA9TVsSAnZWagAAmU8QAJ8hyH/6CkJj4D6/jb/D\n6WGlXpl0SWzoWlztIp8GoH3UZY3nMdQXToJtbNigZjW2iisp2MTSsKC7g/hd\nobFs7zOfslE8xWPcJHN5yGRz70t9CCfq3AQmufLOiQBonDtLtGfwYC8gtHE4\n90IvqLQraSAuk62B/bzVrzjBFwFb1lA5f6bitkGChJMctTE5oPhHX50TVWHW\ncuXHfgfYggwIZF+27dnNsItjtnEG6B1KatnC2kCiIthjMHDSxd4FFPMeYEB6\nOGpxzcrvddGRmdbF2JemkxKwjp4Ku2Tvl/fYhsHZFbHft9swXhwdhRICDYFJ\nqkI7uFuB5fI9NQDC2e3FmNSctozitRYFNFNqE9f5CZbeDYajb7w1Yb3+LZos\nVk+ZUSUbxbETBVk3z8G4927H6tumeCt8WFiJiYOXxX1YOW98OYh0dACaASdm\nUJZzwq7Rbb3s+v9EbrKzPLuZSNC0IvalYOOAbdaKUGePUL5j5AAVeyYSY3Sk\nWsR6TuXwUAGBVHwTGmn3i/RNZ8eHgGHPY8uI66dBMGB7GceXnti167hEbQ9M\nJij8GosBALonAITvmH70TTDvjT44Y7oVUxWqGUNCQv82MCA3pvx3oclT+Pql\nCvjT9ioHfmDtca0hvFwGDPbc2cJzYfDsr/M9KtCGzzBNjDkLHg5CRjROl/LA\nQYp5\r\n=QJXO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYG/B13m0LMfBteeUrAEdoQDPf9yxEju/zyTE/E+Up/QIgKbL0jLGbsaEBHn93VOYxfK2DsE3ntBXTQ4ZNJGa+WNE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.5-alpha-invalid-prop.8_1554899732627_0.4296347803780973"},"_hasShrinkwrap":false},"3.6.5":{"name":"@crave/farmblocks-input-text","version":"3.6.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4","@crave/farmblocks-hoc-input":"^5.3.5","@crave/farmblocks-hoc-validation-messages":"^2.2.4","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"d73c719404c93eed9dc7ad287e51767702b345eb","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.5","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-iO97Vi4HAWVrob1C25i2QG+1ZVZkPmagtP40Tj6L9zM6W9o+HP9rNsoR4u/n9DuyDCmmfpkNLXIQMFTooZeqiw==","shasum":"570b63e8de94782daae5388a998a7b4d2f4f41f7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.5.tgz","fileCount":10,"unpackedSize":67464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcremxCRA9TVsSAnZWagAAyXYP/2vBl8MgmrzyYyLbXgz0\n8pin/9ANKEZ3VUAckeMMoFZDTJ/C6U+Bc7lHo1j0HH9n25i2zqENiX78lXNs\nLuqdsEcRhDBSJqeYiJ/vqES8UqIw16ikVQ23v3hmaAzYHHvHQIwhviXvEUvu\nspGixG2a16UbG12h+lHWKtARB3fRuQfXSpFA1FqDA494KyCEmknrjibd0x8K\nSI2GiDdl6VESbELX6wNeRwuwnsQDmsz7l0/ubpWwb8zst+SkYE5KYVFE63vs\nokSOI85AlMPGWLYNw4MCU+djPnxOCZc8P6Lwb4GVIn9Rh/8d/sIKrYXbCUjs\nb3pznhCdnTY7RBrNnuOlpCFsxtXl79iuhTIbNKABY+s1ggiwCMv/qtkx3kHJ\n4JMcX19VFd+QG7AENus2ktn7Ur7Pq7Pyrv6nyIPYm+QwAPwgVn9eIEUqVVw1\nZzmsfPM3vCKMHvVEn5b30QwCNlM56/qZjdHnSJTiWAOCDYiBXbLnppx7v77S\nPYV9443gkKSaG0TxyF9clCHetuorUn2wGqjO7iXDvvGavZX9ZmT7BCSIGjLi\nhb1zBHqC9KEXiQI07QQhtYFEj8ODIT8uiGcuvXG3quwARk7d1OKpLeqMtZXN\nxNYdbfu92o/nPD3O3IUEf8nqskosVZjVAIkeU29Lm4v14tZy1GNU0lcS53J5\nvdaM\r\n=qHFg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4F44rzF8cb3RnQqKueXY9R2ZLnHudLnjzlHoJIyi/IgIhAKof/BJELy24Er55fdq9cBkhGajqe9CgQrYNRStzjHK2"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.5_1554901424438_0.09802311989029944"},"_hasShrinkwrap":false},"3.6.6-alpha-extendable.28":{"name":"@crave/farmblocks-input-text","version":"3.6.6-alpha-extendable.28","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.5-alpha-extendable.34+a9405fdd","@crave/farmblocks-hoc-input":"^5.3.6-alpha-extendable.28+a9405fdd","@crave/farmblocks-hoc-validation-messages":"^2.2.5-alpha-extendable.28+a9405fdd","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"a9405fdd8870094f5fd2cbef603aa49f09ed83eb","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.6-alpha-extendable.28","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-kVvVIMURbHoet73tYiUlNShkI/gL1iFykYi3UuemlzE02lokFDHgJozu8sdfZY/4Ryzub2+3pOfmcxiJ9YrAqg==","shasum":"5ac80e2775160996f7c825c3f394a0415feb9af1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.6-alpha-extendable.28.tgz","fileCount":10,"unpackedSize":66900,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJct4PwCRA9TVsSAnZWagAA5O0P/23XyVt+y3InaUG5D+8/\nA27xDsDUanGxHPXUPcsSnQT3tr48W6DdbJ7zO9ueHrS8ef8G8KUWP+1QhmEU\nRdcnEHWO3VZpgBgbqf/3wnHoSgbYi9twJYrHMmRphmek7AsWGJzpNLqKqGJk\nEALNHpwrOd8yM5rRJjnqftMrlG6FZHIdP10Ug1iSobODObSpKZUjYRp+mcMs\nG7KUG74JHc3JHg2QB6Gw/Bu5trxlI3c4aibkdi6p2yv4BH1BiU1EnXeJ3t5y\nsePLwMd+S2zupnxKRUNsp12hi2U4nPWyeV3o7osKNnhOBEGuxuq/YUJjs2o5\no0bMwACPqM7ULOTg/P329IWas0Y6D57qLmobV+amlkVkw6zbkbD55IgxOFi7\nB/Yui6R5hCbRMZQJTGqQQVf+5poL/zDJZ47yJv5pybPPK1u8dlkCDJwfLcDC\neeM3Mol7+n44xFQ02mjKbpuy2nJ2y6XXKaYHhhWmlMgnpZ1j0CF/qXIy8Nfg\nivPQMB/JJAa+zmESJa0FDL2xlD3MKfI/h9Amo95HzRKC9dPW11c/+VMiElWN\n2GIo5MFvpunA+YwiIoRo7x/ASPiRaJHIoLawxJJ0dGilh9Yz4nDvGq+oo3Ul\npYOstylt9W6zh/NHrLiBEuw38P4ISdc994z7HRYSqQuV5alQYyaOtntkMWzV\nvt7d\r\n=OsCK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA0qyMnXWdTXnw/1D7YQGK5AOZg1FN4lmEJHw8pOTzseAiA0Eiz0rvD/ci17WsJ2jKsNYDy4sL0PgKkQJKhGt+8cTA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.6-alpha-extendable.28_1555530736237_0.43852792650894035"},"_hasShrinkwrap":false},"3.6.6-alpha-extendable.33":{"name":"@crave/farmblocks-input-text","version":"3.6.6-alpha-extendable.33","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.5-alpha-extendable.39+557a9bc6","@crave/farmblocks-hoc-input":"^5.3.6-alpha-extendable.33+557a9bc6","@crave/farmblocks-hoc-validation-messages":"^2.2.4","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"557a9bc63b02a1a85995cba2e2cc1307e71cf12f","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.6-alpha-extendable.33","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-SVnviFRGbDBiM4nVdc08p0aoh04CCCv0n8BUdAk3ectoOmsdf/5vESweG+VgxgYt+0xiRJJ+RDCvCWnjjdXdzg==","shasum":"4f9411d0e2104cb7a1f3591b11d266912de7db4f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.6-alpha-extendable.33.tgz","fileCount":10,"unpackedSize":66871,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcvwp1CRA9TVsSAnZWagAAVfMP/2Mx+DkW3i95pPDADI+A\nSDhuB9JyOhuelgc+SvJg2jcgqBwVUXWId9y9tK2r5sUc6S0pfOUgVTS1/bSG\nCWSl/MzgFwXvMGz20jjO4F+ArZ6gVuxZbvKO+2D7xYfRMecFV4lL1TXYGRRD\nKSKpoeZ7vfeltlRIUUz9PMxApbjF9/lyEZ3wd5lDbUCZBi6ZPGc++bPMTVul\nXFiNxy1fQeQceIjNImvUubvR8SC808u77t8Ieu4m9dkUBX1NMe1d6CJDmmVo\nw3XOOwE8QPF8PHvCeC561JHBhz3ia3PmyND2+F6JoEJBhSDLr/HWZblhgbYE\nOsGIsRO5d5PrVKPiVQQhfvnIqji0lkSfalQiRK4wMcw0h2tT4A4WZHQ8YxxJ\n2I++RXixuha+e63++ZDbuHBhejhnJv+jFMRPyF0BZDiGVPCmS3O+gSNoF0ec\naFrCI5Z4X1KQkSvsnodfMGtwDAk0E0VWE7GtSXSS4HDmVvFtW+Tw4vb1OSG6\nXf+Faot0SUvD2MryIZgd+4Nlnz38HYcoDQ8YJM/M/t/2onEhxC3+aT7WR/eS\n1OPGMUNkZrEjX9eur7irXGP0x2S4wc5ez/blUkwJ4/ju5OJ0owYGb5Gq3Pw9\nR89YWp4WbKzNKI3w3lksR5ZZeEgCdWDpKUJ2dn7QdSHe1F3PkR/u35WyXCmW\n6jtG\r\n=fBIB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIACtlMdU38XDBcOrwY9QclknZHpUvT6Wwr18huQrCO50AiEAvyETrujwZvnuMhpRsHg+lZEC7LBw9HeO36+vDWOoktU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.6-alpha-extendable.33_1556023924792_0.5810202781269664"},"_hasShrinkwrap":false},"3.6.6-alpha-input-focus.2":{"name":"@crave/farmblocks-input-text","version":"3.6.6-alpha-input-focus.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4","@crave/farmblocks-hoc-input":"^5.3.6-alpha-input-focus.2+d2730101","@crave/farmblocks-hoc-validation-messages":"^2.2.4","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"d27301011e445caebe14fc30acc27c039545af44","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.6-alpha-input-focus.2","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-elxEZntZXlNquYEhrAaqLQMH7AAD4lOrr4Hn5KMHm9TmsK2ZNTr2WGHODuaCBw3XHCSj/e1hvQfdKegS50wHmA==","shasum":"70bd004fca4438f0193fc58325ba70d82c3aea26","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.6-alpha-input-focus.2.tgz","fileCount":10,"unpackedSize":67522,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcvx5bCRA9TVsSAnZWagAAa+0P/3aHTE49s6aGmY1CoByP\n2p/V/ClslE47mHwihspO/B3FVWUEAds9GuWwrGDhAURkyeh2nwzO5xxdi9NX\nq1vFTgrtQBx8qWxYW3Lfu4DVEetaBoMOffmXkpllQBBHF+nIU137esfffxy4\nj3wloLzQYfC+VhFv39X/f7+6NPaZqLab3Q8PSvp2E+UtZjZmPZGwROjVNK6g\n2E6fd9qkKuRNzwdAGHi88dKwKaMCdeW8dBv9Cuwr1FyprVWTSbnno23YPMEP\nax8Jye9OiOdsZtVSqrflLxqG+hzOcPIlC8rPseLzBhyYp65uBiUyRXuONWZ0\nW9Jv5zPf0UKDC9FVuNPVTXOXjE9M3s5CRHha0dxQxF1AUHr/qQaNoInFyHCn\n/4gvlulnS9VqBkdghc8+KTM1b+c1oKdLZcTzIhh8zwIOmfAr9YB3J/p7QJAg\naOmQkDRI70cu49U77lgV/KfZ7wDnVJ+JJzl4XxpGPyV9PoOpD4ORJ/G8ky0n\nh0BIh0cRCk6VXnblaPZoiCqO71/sgXP01rXscAbAy+paj7hXhYaJuCqGBrlp\nJFLbicb1nZqSi+AIO75SYlQqKUmIIqaypnt1boBJxsE0f4elfwL4+xDv84nK\nIcu021vTfI0eGEqsREs4/ceH1rvFMFY7diRv72dNqTwUO8dtV7Q1bppnFXh8\neg/e\r\n=Zq/H\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGmU+POA33mSlSq98WqLXPo2wFBhevzZ7pA4Ym4aLRTvAiEAjcfrAkBP9nPoV14A1o9zyY4NR2OsSjTAKFifOCDQYRc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.6-alpha-input-focus.2_1556029018500_0.3810097051722119"},"_hasShrinkwrap":false},"3.6.6":{"name":"@crave/farmblocks-input-text","version":"3.6.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.4","@crave/farmblocks-hoc-input":"^5.3.6","@crave/farmblocks-hoc-validation-messages":"^2.2.4","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"ec82766ca4036b5bee3ac89ab9ac115057521f99","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.6","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-lT1bgo7vkmakLGuZYc/meGWEoRpXJueTsTWRqcFINt6V0UQgqnbtN5NQzZRYbA6cdLrR9OWA24Y/rNcudrlsgg==","shasum":"4867b88a8effd3853c78874eabd2fd0458c31891","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.6.tgz","fileCount":10,"unpackedSize":67684,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwFSgCRA9TVsSAnZWagAA4dUP/3R0sXxT3Hn8TPhCDi37\n3wXf9DUZpEB9FIsMzzoZzym0NaPeuGSiSq1nzOCl+VpdY4V2xu0kIVonRzBR\n3NI0uVcupYj22vn5Iq1ZiueGnFrBHLc8ymaJuOFzIRiTic9XiUPJLjUONNyD\ne8/5IZ9xffOMudab8OAndDAASZcRVWo2r8k4LtMLLg2A/Ps6V7krwW3Tz2Me\nbiS4FwDCtoh3/w3G6rhXmwBYmLrX2CpxasXmAxK10og73pGcEvlTkvCLNH2b\nG6blyKBrsM0Y9HToDlTM3KzMFoSxkUGSekwUEWFrAqKC85TvGO0XfxICsZKy\nTIZBp9dLBoZ3KrZW5z6UdPynsq0bq+NZurqsuAD0n0SJKQV1AbxRoU6Gca7G\nV9NFjSWqEyIxAEEHb8bSU7Ckak9ws9Dc2TInd8qVZ3T2Dx8DoNrS3I0oPZaI\ntzs7LIMogcj9t02ZBLIvIg2WBrcGpfJzezDJYrMgeYupky9FXYxk9Ls1L7gE\ncd6fjWTUnc5LcIawrEs80Kjzv7k8Snx7sAHD98wWLKllBZzTpEIFETtTxbeP\noy24TM4r6N4IHZzkM19p0abL61rP0wjqQuXuz2zqqSRIiDBC4NbI1abrOMkY\nzwuxGZ8x4mpHrrkSIWWErt6qcsJt1WBnZbXXKoWELlnpDAGCWDlu8W9PkCxy\nBm2q\r\n=uSUV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFQUZzBZLGXnGaZLtb4ohmI4L642gbqsoCFfR0mALJHCAiASPjXGutAzY+AbsunIAvZKh2eZjrftDcYtjv4FqLVjQg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.6_1556108447811_0.2030069482504513"},"_hasShrinkwrap":false},"3.6.7-alpha-extendable.28":{"name":"@crave/farmblocks-input-text","version":"3.6.7-alpha-extendable.28","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.5-alpha-extendable.37+708e641f","@crave/farmblocks-hoc-input":"^5.3.7-alpha-extendable.28+708e641f","@crave/farmblocks-hoc-validation-messages":"^2.2.5-alpha-extendable.31+708e641f","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"708e641f927003602f2bdcf2cbbcbc1dc000a6a0","readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.7-alpha-extendable.28","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-cLQiv+mjTsOj/6NMEwjyyL7XhQy8O+mEwjO57wwjxpt93PjlCnoN8Nj+NdavAfRWppEkQXCxtewI9eTMcCGtvQ==","shasum":"a55ad137c0bd9895fd688e64652d16ed26b0a47f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.7-alpha-extendable.28.tgz","fileCount":10,"unpackedSize":67120,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwa6qCRA9TVsSAnZWagAAmBkP/31VgBpaWwe5l1z+6Kmo\nZxicPAr2orkoiqAdd31myTyddDxeEd4Dtosov55EfdwwX+yKd1JyIU3qyI+f\nmwCIKD/ifkPOKTP3j59JKI9AEGb3jUs6evS36jV3MkXn2SAw7sPN1q5pV+Th\n01x0bh7vo3mrknsQHnW52KxWY820AtiasW9m5FjIHQ+9/EC/qTk7ZFha7yFi\nOwRqYSAkwnN3jaRvDrJxLjEfpF8/GEyNfaKYqWUsUQ71YQKJDX8yvn+AIFFw\nAQoWWCIgF/dZ/0VM+AJO4fH/utkV6/FCjawcMCmIt501TS5J9URXUiSmUNLp\nNPpUciyAJWXabrK37Q/Xbyc+2rWltcPYQv4OZiJF15vKExEqCvksdXc9thMI\nDhrOgHuBVESKp0NqphdxUDsqeiBjbbFHiog8dYKEAN6vvuZCM8Jnm7mPHg5h\nqNp0CQ45zd9XkLXHyTtdEHSih7+vrmiEkKGFMDLVTJAOJmZB40zSuAd9yZvt\njRJBNS1NoL0m+JOrTAltyyOEAmueEfW1x896XxI+Ipyz9WapTmBuCo3uDdXT\nuAjeu4qULhvcRjxOwtV+5ko9X4A7pLNX1RnNuPtv85qfs3GOYfk2j//v6RpT\nNFMid6RMjj62ztldCev76hIUkRodNDx2bRAPzCxccKyMGnqEQQ+U84OdhCl7\nPFUV\r\n=pXVw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuN8IlyDhKPWxdmToxY9LXnLkJjbyDaUJ0yAE/Axy36AIhAPYWeMkA9933lYXpi/LAF3URUZ3lby5RO1ZBvmZoh6z+"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.7-alpha-extendable.28_1556197033201_0.5636466892835432"},"_hasShrinkwrap":false},"3.6.7":{"name":"@crave/farmblocks-input-text","version":"3.6.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.5","@crave/farmblocks-hoc-input":"^5.4.0","@crave/farmblocks-hoc-validation-messages":"^2.3.0","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"e5e93f94aa1d543f514b4df7c4173b0e7a7f42c3","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.7","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-CYQ/BImFphCuh/SqHwritzWeZLu4Q8zbADL9RpRag3OwNoeUFGdItQbHyehzyIaIjMRbG819eVKtXFOYgDj1rQ==","shasum":"b1d3b82c425806a3de4df6a3ef5c662e50e56fe2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.7.tgz","fileCount":10,"unpackedSize":67224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwbNlCRA9TVsSAnZWagAAmaAQAKUMd4JYu8ijyNcQwPJa\n6M2QIau7xYSEKniKuXaqXIvdOCylCz9b5VhVVlX3IzsIcvonW0HP6pLK8/6V\n1lbkHIuA97PyKEZOZUIi9R2X/QPQByy9fgQ7kSepfDj2EtzNbAQf/FablWNp\nA6k4Izr6/rLdYEgLkrCQyrMfEBXYJokuh3oYerWm67CghgNr2AbCnvAMWWbI\nnNqgHYzWVMYb8VCC8MYoSIKJhiEL0aTLcHf9f2DpbGRV/gKNBjFJ5jqU91y+\nO6TtBKKcrPxXO/UKNAu7wCitKIGAwAMfdhbj9aoXYDyyXboxot66jh6qvZBQ\nKHbtWO+h8c16z8X3zSekdEEmr7jtQAm1guAqcn47LeajwMh/F5Fs4ycYfNtk\nfdyX0s5YMsIrtt3TRHUCua+RN5sZAxkDPrKXL1a6j2eNXyzojeVjEpnCnjx9\nQ+vwJMnR4yM/wjAzhJdv2sZydNn703p5MF5kvTTHnB2FPXBBnFVR01+BhBgI\nBtoZOSJtQjpWwgPyxeHkaFOpY92r6TvxaoHJh/rTt5ePg6FFMi9F6UCgvoUh\nEIP9ZmpDlGhlSrUli4ta0KXGI8G54q0KcmPfBIhr0ntawvJxvHcccnSKXbnK\nF6lUsTkkaQt0W3BaYY/nGaKttpj108e6hUn5C2B7qDhWVc4NKgmvs8qIirWv\nFdMx\r\n=ceVa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDZmFW+4F0kwI0nErCAAtAeZlTH9JYsNOWYSPxwTixsiAiA6RdTkkvQHD79dcctmwW1fRjRNKK/2LvvjGmdP+kepPg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.7_1556198244779_0.37391625197655065"},"_hasShrinkwrap":false},"3.6.8-alpha-modal-4596.1.25":{"name":"@crave/farmblocks-input-text","version":"3.6.8-alpha-modal-4596.1.25","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.5","@crave/farmblocks-hoc-input":"^5.4.1-alpha-modal-4596.1.25+2777f90b","@crave/farmblocks-hoc-validation-messages":"^2.3.0","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"2777f90b6ef71a83e6a426b6adccae7819148ac9","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.8-alpha-modal-4596.1.25","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-0CPMp8S/aGmASwp5xx4kRcSJk28GY+xKDdz5e+mGIubywPAisvnCJadChdzeLz8wsBYO+0X5RQvG3IEiAqgPnA==","shasum":"4ae0bc7559917f300d57312aff1e0b7c57ab92f4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.8-alpha-modal-4596.1.25.tgz","fileCount":10,"unpackedSize":67286,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc7ZTiCRA9TVsSAnZWagAAGYoP/3WI/h2OY1x/5r0Enel4\nixwyn96rw9dfs7PTdQhUqy1rt+ewTbgFQcYE6pTwd6lSbZjpW2Xny92oTB9k\nTNFhlBwbJzcsDlkJtkr+k+rh6emq8lC1VZ78erafFgDUpxuhDVUS11nbcSD+\nYP5QZJSP6zOMb3rK4Jm8I8X3Th+j7EhNET4ygLy4dlItbWVvuBwk8YwCWpXg\nH1zcJ2lwMBG25OtfjzGPCqHo/8sRr1K1qQoAV2/tDIQmPWroOiyI2TXdw4Xm\njPPE4dp2KlVc5btHtbWpa/lCa/aNJYzzXIhAqHToG4YDgZgkkANbcId+/1JZ\nY1zUAA1Qw40iAIJQuTFv/ce3lgWJYKVOryMz9bdJtiX0StgFGn1VrnOKhRpR\n0v/7zAZ9qtQLobraZNDG+CYVFFA3OTZ65fCY5/9AV3hMZ+bETSLuByoNxMWv\nz8+GE0yG+tVrZlspNPASS8qnNiofwOnYuXELZ1ScMeholBiawYfAR48fDu7a\nodsW/gJEv8bT7SjJzQZ0xAy3JuKhF/eDRNCpKa2GZpKxqtoguvZTZgDxLaOU\nmhsOglg7r0LEPZTJUNtG3Y5aJXaUfvjaM9wCZorMHytXO4Xm8bymJxMB2bPX\nGY8GWHRxUStrHhE1vqgl7sJs16hDjT2blpwzHljRIKxK90bi9VTUcLP3jWYN\nqqMa\r\n=LDv8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH2jKhkmhMsBU9r2gnkpny1Nw9atX8FFrVctsGeJLwXOAiAfgcsErX3NsjXruPAppjBKN/TI+qPnqgenI5E/HrKI0Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.8-alpha-modal-4596.1.25_1559074017772_0.10326370201567903"},"_hasShrinkwrap":false},"3.6.8":{"name":"@crave/farmblocks-input-text","version":"3.6.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.5","@crave/farmblocks-hoc-input":"^5.4.1","@crave/farmblocks-hoc-validation-messages":"^2.3.0","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"1998fbc0e41c0802783bdb74b7bb6f6cd9af76f5","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.8","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-ub+dpuZZSmmgLb+8KqtrKpsidPFcrjTOFewBy+yjRg5wJN9odxvMh+kzIK4pOepbiw7e/MWs1uBJDzul8v4hlA==","shasum":"c7e4eac3391b29ae363d1400bf8f23fc0680b3e5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.8.tgz","fileCount":10,"unpackedSize":67444,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc8TAgCRA9TVsSAnZWagAAghIP/iSFlRQuGAUPvX2wAMie\nQvy5gzhzRpXem2H8KLlC/7hOOD5C2a4++QOeZ+XEIqjurmq6eS4WzNGQG0ju\n4Yv9Z9t8mH89H1aWCtOkW+Mdn6olWczrnel0tIlROU82GUI/Jlaj2jL+ZhjC\nNP55GoMVD0nGiSgw3Iz537KgtzlU7bdIa5kaS0bsQj2Xpf9rm1NzXFJvpfBp\nX8wVf8XKmHO5Wg6fT+rJQ+qxGeMoLpjqnYHYkYm4P2z3524DxDio5GFvNNoh\n430nIQjHamo6MjELhZBrKD3khM6o+IsoPinxvxTUgTwturxWCV3tLubhNEtt\nChm8cpTYpjH3B+LI6uA0zCyBiXnqtvx9Y7OVhNBGy/yKvCGYekBvAt7cCqdU\nK5PXz9lfUvxmoUcmMtg4Dow5eCudKZU795+JlYdxkWhr4U4eNge5kO6KNATI\nmmxwrUGMZ4ajjjQJtk/bXYr+Y5UpG7mgQCS1uc7+oxb63rkXFgXxSYA0PFpN\nLB+U7eSgsHU0mxdjR7WsPrWTKdXPA+k2WDVrGjLVfOYb7S+ThyYfsO3pEHzR\nh1ZxZ2TaKWbrmMRwn8KIKMqEJYyNINvvJWlkEOb/jV2CUvVSIPVdaH9FeoWN\nQ9ZbYAH61Hu8eIkn8XhqgUXT4h3QkhzDzFA3vVJ5O8rLfN+CXGU3qDboN57f\n2cop\r\n=0IBI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIASoNdtE89KLhGD15TZ3P9GFj82y+m4QAxSu6WSA5DKGAiEA5PAtLi00pqq4roP0msW3SgSje/SJKIOvFj0WYBRDncM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.8_1559310367615_0.12306505995148664"},"_hasShrinkwrap":false},"3.6.9-alpha-modal-tweaks-4662.1.6":{"name":"@crave/farmblocks-input-text","version":"3.6.9-alpha-modal-tweaks-4662.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.6-alpha-modal-tweaks-4662.1.12+cd48bb4f","@crave/farmblocks-hoc-input":"^5.4.2-alpha-modal-tweaks-4662.1.6+cd48bb4f","@crave/farmblocks-hoc-validation-messages":"^2.3.0","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"cd48bb4fef90ee64e73d62d2aff7a9400171efe6","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.9-alpha-modal-tweaks-4662.1.6","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-v2XsVtbiqL4fkQC8u+Mo1FO3ZkiKarx//Zo9BO7/Ak3tRlTX1dZiu0mU8JgGI4TlJE2dygT+k5AVuUU6DNd7Zw==","shasum":"3b8710afcf6cd50c04f31cd48564e132c696f539","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.9-alpha-modal-tweaks-4662.1.6.tgz","fileCount":10,"unpackedSize":67556,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc+qHECRA9TVsSAnZWagAAbDcP/jmbzFDEBKLSGqv8v5rs\nody//DfXneveTUf10vEcKLIxI8qWkQIfdW292uURRtHS33pmOkfGhmKKztDW\naShYMxbj5eGxtZH2/7TIXY+175fDj9P6XOsRmaTKNK8Y15Vf9DbaXimtNBLN\n1zBf5CRMMQ5l5yruMIKegRzqJZkHn/BF551q61pKJbgb2X2Tsy/tbdCZkS1B\n3bIIzya0JxASkSyN5y5r36ylHwGGG3syC8AozJM59ldJ4oeXmMjsh5b0nfUU\nYxEjZlz6BQWk5SXniHhTb9nmU9uCiPZs4iBcB9wtFjaQXF2/zx9GMGCoZJIc\nMrQ3L8L1ZL26bMPa6+a40aqDPamvQ0oIldEAcC7EXqrYFPqrrZ2cIQnY10Js\nHliL+z/Kx3v6qGlqc6XlrgbiB81As+A7X45rnmOCppc2V2QbVtDVk+KwaX6I\nZPPz7TZa++iczcbxx2zu5R6yp0jsDgNRiBaW+BacI0tIqy0pdneecxZz93Ic\n13m7rpF1ZutMYFSMOC3XvdoCZCM2OWjHwBufjWMbwc/jyT8UiuBoEdbIvzcs\n5n32CrgY4Zrf+wYC6ylxi6EEZycXSqYo7eh36rUKANZ56Gif8aK4rnotOzoG\ncCqKMa+Ev9WvnRg/pRDFeGY1hwr+m+YD4pgw7WcfIFa6g6wnPzXDR8GDWANp\nBi98\r\n=2UE3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHvb3TQZ+qFrmBB/wdfyn1fufBuOGK7g1AHvrclv5aIpAiBoLTQSWbEAMFdEBVoXOUJzvqb+fo/gMnoQZSKYGVVbCA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.9-alpha-modal-tweaks-4662.1.6_1559929283474_0.004553238992301978"},"_hasShrinkwrap":false},"3.6.9":{"name":"@crave/farmblocks-input-text","version":"3.6.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.6","@crave/farmblocks-hoc-input":"^5.4.2","@crave/farmblocks-hoc-validation-messages":"^2.3.0","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"432c92c13fdea8659a9407c66183c774dc8df502","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.9","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-9fURXTCwEmAP7l6lmp2UseAVyIwao39ymmdx36p0jSLsxDSkq/Np4jo0eEZ5wZXNw61xIprJctQa1CPptDXckg==","shasum":"e2feea2f11e03b2ed09f3566718ed7b31692fa74","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.9.tgz","fileCount":10,"unpackedSize":67664,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdAAUaCRA9TVsSAnZWagAAhecP/3rGv/b5fg+Ebi/70Xk+\ndg+M1AQ07Eg42vyx2WZcjWKMvV3XCiVOiCGWfYJK29vV11JaKfQu+rm6zCLp\nB9MkogVmDVf9bvS3t2zBxizK0Qvud/a7Vf61uZZR6olUGe6YyaBHtIo5lpyF\n+CVVVLqtjWco72Aw2cZGf01ICXqLhxXssrsyo8XSV1oSc44L2ixaE/tYLujp\nC/keD53e0ySWh7s3LVNZ1FhdjhT/xle/uP8StLx++kgspUAEPlTzXauldHgy\nw8a1lnUbjxKZEpmAgy973ReBtwOKFdTysPnVtNaiKeikZCUv7bVB7VBafw8x\nxI7P5grv8nYLVQFjHzPLGOG6qUib9RDVgb8ddKUu+Ub9/B2xWNpfjRjpJ9Jq\nQamOmTbzdPWgBwZXhq/YQvXSyQ3SzPWt+BszQJZYYK2L/OMTrlLOJsWcfHft\n7p7hTmggWQD2YESWTLrjTiFludPywnJem6g2rhZS0LXaRCxNXIbAJueX4TXQ\nwzED1pZU1a2/XmMi6CF9++P+df6qfCgZdSsIQJH5UTZvgo+gJV5vvGaEhPAk\nxRpkXtjCbr9nDY5pBVzroIxwARnxGY0PbL98Bdrg0QlTYa8TxO6UqfVvYr6K\nB1Orc2XfEWrucrX1EWfXNuNNxTwm5PbkHE1HDzZh9o8e75688uH3jPJCdhDR\nL/+7\r\n=xH/Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGKaSybIgfIXTeC1u/J45sqPuIWIMjk39bJgjGjWi9XiAiBCsNmM7rYNVNEkEzo+VY4MkfLvQXRBY/Ltxcy/fcn/wQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.9_1560282394071_0.32176776969808074"},"_hasShrinkwrap":false},"3.6.10-alpha-text-truncate-4709.1.4":{"name":"@crave/farmblocks-input-text","version":"3.6.10-alpha-text-truncate-4709.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.7-alpha-text-truncate-4709.1.4+6ff71573","@crave/farmblocks-hoc-input":"^5.4.3-alpha-text-truncate-4709.1.4+6ff71573","@crave/farmblocks-hoc-validation-messages":"^2.3.1-alpha-text-truncate-4709.1.13+6ff71573","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"6ff71573420e828075048f712fc799252f5e3df7","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.10-alpha-text-truncate-4709.1.4","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-RM0walTSeyeUrcRn+1d/NHUF329hzq+L+7aij/jzcEP8mQr4hVVjPWJGtZ44x0Y5U+MrGVt3kJlHVP/aGpV9uA==","shasum":"0bd38b0640239363ceacfdfdf4e1b720894b775c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.10-alpha-text-truncate-4709.1.4.tgz","fileCount":10,"unpackedSize":67818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdCjnbCRA9TVsSAnZWagAAvaMP/jy02Z6SdTUm6xUVlr4k\nKCusY94l1kG49yFocq6zjWBjYvnUlFayFCX4mHBKR2cq3GhYGnbEt7dEZ22D\nGs1ujT/frWA4Hf/pwBNnzl2DWV2zX8fum5qbKbTElK25RlGPuEoij3KL5Kfe\nHFhlNv88QcHscQDuUbN1YcYeIFeodPyE7xUtMHWiw+E7JEYNXygXMAGi4IeQ\noYa26qmJc/h3iIyX7IzZ1aBSDU3yXrmCenc/qmRhScriEqmkF3jWtL8k+ad0\n89nyOem5Rh61POvHoVYK8Hbi3gv8hjGifCkqYBoTK4oO4YLm1xzLTHOWpZyi\ngTHuT19kEOHbNlExGLHWjT0X8aSO0i8r2oC8ZJIh4o2/bt2XU/BODInNaeSz\nKFvJqH0JF3/6meLgRqbJRZ70mpkX6lcLJdwmZC2Vo0rOOr3+cNdJF+Qqvy5M\nGNeh27can7SQpqFQEUakht60/yMIGM/N/OFV+jz8xURPu2L4nrtN1ZJZV9aw\n71fKDnmMGo5xy5A8Ud8CeyFT4xOwStUbnOaGA080oeoCYTVgzmMV72GDTq9b\nZT3NWsPZkHnbmu1LTF5M5grggufM8zBb/QfyRdsZLwYc3K58h3XcgzYkJ2qk\nTxSaXmB32LmKuoV/HM3yAsqy9dlrotkg8VvV4655rd46Lq8A6ZFLm0UwVo0e\n2+pI\r\n=75/z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH7qG893M9XAtQCFW7j6hMgbMCyRfKO+oF2VcYUsIU8IAiEA9XsospbDR31n/gxRKH1k2N7CW6K1pimy/+/wQph08Rs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.10-alpha-text-truncate-4709.1.4_1560951259230_0.43513660084406003"},"_hasShrinkwrap":false},"3.6.10-alpha-text-truncate-4713.1.6":{"name":"@crave/farmblocks-input-text","version":"3.6.10-alpha-text-truncate-4713.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.7-alpha-text-truncate-4713.1.6+e6782892","@crave/farmblocks-hoc-input":"^5.4.3-alpha-text-truncate-4713.1.6+e6782892","@crave/farmblocks-hoc-validation-messages":"^2.3.1-alpha-text-truncate-4713.1.15+e6782892","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"e67828922572b7c3280fcc9ecc184fd5fef95ca3","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.10-alpha-text-truncate-4713.1.6","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-oxYFeB7yAF36oug9w2cIqius0pAMbIUfJAaB2YUCVdzaKrEJFCb5WCSuq8LFQb52TUZXIjamYco1ojKm/QQYkg==","shasum":"4e63ba2ce92517097b831efe0df292dfa0d1ad4a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.10-alpha-text-truncate-4713.1.6.tgz","fileCount":10,"unpackedSize":67818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdCm1UCRA9TVsSAnZWagAA67EQAJSXAFLQ6vwHxJGmhFzL\naOYP9J1tvsZcawhNV7hCsZYh0pRQeu94VFpSnan3LB+eiVm3mU2oSB8R3AKI\nkcERWfE7ee+sPCeBipVRTHX9J+yEMzOJqYMM37FAJwsbn8Euyeo8Rld99exq\nups0jZ+XKn4Nr/IDh7N5YD1YQkT2it0BT72P8LMcygCpGWaA1ifcqscMEN2Z\ne3NGbQIC9B3sVkS5NCrVjR2k+6PT8XqI3/Bpt0VQkB7IBXzu0Fzc9THPG6Ck\ns+awX4tylQQjzZtEhH/R0bxaWLWbMumV7ikO8uWr1oMmAKK1V7ohMTMO2sVz\nNdjf9LXMVYhPn8thl85hlvjJBU70nZ1xMShl+Tom3H2KzUUByWOhefIJg7ks\n2HcZGuD98MDbITcKW9NQ9XOUJAFs7avDjbNXoLuZnz8JleAKPT4+bdV4IXHW\nRTb1gpcrny8sDiMMr/tf7N5gMaQtYiSkALTEV9hgmeROe31bP0TgxgSqA7VM\n0zJ5E8dslEDY0QI5YcCXkURHeSeh/GJP8hzkYI6e7oavWEHJuUXdbORgC6Js\neHM0Bzf+/67oxbUglhs+mXzO5z/GsuVCPfz+T9zRxzyv1fnNwcc9G92DvJMs\nL3NRlYA5HJarVyCwAIBw2uyOba6eRe5psRBdDHiuwurZw4Wq+ooXcfy5V4Cg\nrFeb\r\n=MP33\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBj58088gw/SwovRyO7b+0WzzVJntcHRY/eXxnVNsXolAiAKBZ9EqgOCjnZS2tPgJnKg7JHwnqC4g3bUYRD/63IQfQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.10-alpha-text-truncate-4713.1.6_1560964435714_0.22894807278559814"},"_hasShrinkwrap":false},"3.6.10-alpha-text-truncate-4715.1.6":{"name":"@crave/farmblocks-input-text","version":"3.6.10-alpha-text-truncate-4715.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.7-alpha-text-truncate-4715.1.6+3c69ac72","@crave/farmblocks-hoc-input":"^5.4.3-alpha-text-truncate-4715.1.6+3c69ac72","@crave/farmblocks-hoc-validation-messages":"^2.3.1-alpha-text-truncate-4715.1.15+3c69ac72","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"3c69ac72b30705a04ce154d2148d07d35628c01e","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.10-alpha-text-truncate-4715.1.6","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-JCdYDfxDnXg4UGAvKv43l421SGxL/TmAz/Sdo5fSnnqkClM7P3OMYGMJpsPsmnPuwlDrKiIJTsHNib3NEvfjsQ==","shasum":"6a5fca1bec674d5c91fa9819f8ffa09940939d47","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.10-alpha-text-truncate-4715.1.6.tgz","fileCount":10,"unpackedSize":67818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdCnF9CRA9TVsSAnZWagAA1ZIP/R+Zu9BY/S7ljUgj9x+Y\nmJ+Z8dhfizentWoIkCFurU7WQK+t1MlY0ZOp/Cuj5LcsXlBbPXDwebE215Ah\nZ/xX8y7gqRyNuL+xfFSi9xa+KqXtb32gFu9B+WAgVMRE2tz/20F0LbCyWH/r\nPhdtKzCr9LnK+yfuqgKcXvOE/l19WmCPtwZnU9L49bt/O/lxju1/2NKxPrPm\ngH4vz8V3gyndwehRhSZMScFpdqpAHdlIF6oyjNMWLcRtXdBM3vF+ll1JZjKz\nLGFfhWmmwhxsoFNHyhP1DDQ+/y7aPqcgy+6S3jDnSB49/iGbMJs7pSggJaUV\n+AiUhN5VcniQiXHN1tCwKiCmxJyo8VZGS1f1c2/zk57GaKdnA7+Mxl3cs5Nn\n+9+PUIrtv3JKy/Jdc8CPUnqVNc/HQC2pMUvyYNQJ3JeKGTJ3PIEnAxd7gLcL\nZjbUTdQ0TcTgh4NBtd5rnZYj7eHsAvHrgbvv67o3X2czOgQ9G55Wl3MoeK/G\n2xOIoXQ2iJfmwXbc5bQx19gUfTzPsw0sxTQYYfJHjCJPhYaLTOeO9LoLeZ0u\nQ0PFR+apsFHmuK719jZw4S7boVPHR48RSJYlJP3prxRfWe/6RWPJWKqlmBgH\nsETRsYXhfMTibhxENPE674ssHGOfknh0WLO0QNedDTTNrba5njNH50fatCDr\nbmJ1\r\n=UCrB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzjE2p/3QJvKLONpQPiMZMTOfIowwTtC61DFhGYyxGsAIgCZhaq1Mt1jV4r5vFnUhWIylPw64JnKfHcx68ZqIH1w4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.10-alpha-text-truncate-4715.1.6_1560965501113_0.23589761871040293"},"_hasShrinkwrap":false},"3.6.10-alpha-text-truncate-4717.1.7":{"name":"@crave/farmblocks-input-text","version":"3.6.10-alpha-text-truncate-4717.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.7-alpha-text-truncate-4717.1.7+e21d850d","@crave/farmblocks-hoc-input":"^5.4.3-alpha-text-truncate-4717.1.7+e21d850d","@crave/farmblocks-hoc-validation-messages":"^2.3.1-alpha-text-truncate-4717.1.16+e21d850d","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"e21d850d7ccdbe2b8c49bc07f9a5a921a958872b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.10-alpha-text-truncate-4717.1.7","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-Gf2o+IE1q59HttNi886d0B8aRToLoTeK50kpFEqUbOlteZnLe3VeZT28dz0s5Y9Tb7SqwZoe4eIwGbat1UFtwQ==","shasum":"c4441a2ad1af1ee6dea6149bb63eb7412e1ab567","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.10-alpha-text-truncate-4717.1.7.tgz","fileCount":10,"unpackedSize":67818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdCoVFCRA9TVsSAnZWagAAZh4P/19M1oeUJx8erFimAVGD\nF/vKRDGxzc9lIi0uB+6HHlRqDVWrdaEA/rNmhj9SgdVe6P2OFCuOeDzcjq2c\n+Qkc/LL/g9CLuVFeNRpuGej/33lbMe/KbEkdTIEahBs1A6DvThxL0QWwkS7i\neGKNW+K3HRwUZmGd9IK3fj6TXA0VF3OQi5PsncrTz/SDQS0cN+gN33bjMvl4\nGvYPYUde2bWgOzAoTeZFRM1zYiaQdhSggH4QupOvy7HCZjsypASw2HuDsYk9\nzKQzNlRugDZhhdvjq5MfiTQOEgrozsCUdjRx9auGnuykHRX6ZAX2vUoU/RvY\n0Za0hCQeD473QdCRDuS2M/6c1VCtUpI9DYwgpRPns8Fq08bktg6jpYUcUK+/\n69nss/zHm7OaO0nNxHxuMETgM0HPjBmXKQKn2RkNJNjm2qkSp5jGmFUN35QM\nULulkYDRskOpsnzY/f0MS7yTm8qzUYx0eH3V5vXw7sH6xBWSrinqB37ytcQ8\nLVDXg/PHT5dsfs+yaNHJIlH7Te40rh7S034DWsAIri/hTOBMvmGB/KRoKsIi\ncd3qET26ttHxW5ysPFQgKsznVRHJpFJAYNpQsAac5I5RNUz1z+utCb/FBe/k\n6L0vaj1L9OjxH4gnHVkworooosRrOLZ5tgVnh0Ql7Kn2oEzNOE+PxonslB5Q\nsyrO\r\n=1Ruf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD7k/aYBBCacffFw1ss14crCxH0VoCXha8W8Gh0WVtbwwIhAMJvhbA0LK7sxsT4Szqj4azGJewXW0A8CnYol9xw+/1p"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.10-alpha-text-truncate-4717.1.7_1560970564267_0.03995241921894155"},"_hasShrinkwrap":false},"3.6.10":{"name":"@crave/farmblocks-input-text","version":"3.6.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.4","recompose":"^0.30.0","styled-components":"^4.1.3"},"dependencies":{"@crave/farmblocks-button":"^6.3.7","@crave/farmblocks-hoc-input":"^5.4.3","@crave/farmblocks-hoc-validation-messages":"^2.3.1","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"ed34945c2a855c1e01b4565eb61ac28cbee48edf","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.10","_nodeVersion":"10.7.0","_npmVersion":"lerna/3.13.1/node@v10.7.0+x64 (linux)","dist":{"integrity":"sha512-P4E3KqY9dKPOAz7uxxshhp8Fw0E6y47wOrt5Hm+HYGWsSTzhiF0MCILtc4ZXnhpMeuAmA5k7a/seyii2Zo5wUw==","shasum":"b6bc2a963426696948f820fd2095787f7c869e65","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.10.tgz","fileCount":10,"unpackedSize":67887,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdEi4xCRA9TVsSAnZWagAAm9EP/RvXa7CWzRkJJ50L68Cm\nFBgQ/ejaZLWIOWaK3+GFK0LFi1pdlc4g6rEnSNbUwZLFc520DIgdMHyhs70o\n1tKEKHRQ6MZtSdjii2cd3iJ+yZiqvcUW69rqmIlHbvwHYbc6SjmKi7xux5Ui\nQvVkz5OtnGBIKlfG5xTQPbTLRmP8NHZHQEhSQlZJNB3hsZY7Fju+GVkwdEtH\nz05cFNB79G589IeAPsDZejUIMqbBCD1iFYdPMX2HsR43CErU7mOLfnUEYYVL\nIrR+YTnaoen9kAnbCfrmIuIUru9sxWUapwWuAHKrWoji5wSdcKzpOAW1MYUd\nvqZe6SUPl10HSu1TbronepUe95S0PNAKDgsLOSuTYb4B7CGlx3+5DhhBHe6p\nfrPGQGzqQe3FlKi0VTnXJSnoR/zZjZdIZQR91HeMvmiVRm14zz2TacEGwB9m\nJA7A/VNNWMr/DFOLTsGf0sSJ7h+BuDPO0j5X8w5Sb0fpyz2v4tPVW2VsGxD4\nAIMrH4TydZCYCk4ngLTyXEGsH3RQQIvE+HrfqACo+unyCjbOrXWiTzm7b3Ph\ncSsmezFkEH+J6VFCSQaIfjBbqmexr5i9R0hxynFe4hEaiGhAPHRlcLqXFeii\nepfTZvZxDsGblZAiMoBN/twIsEOFs9BA9rI6FwGxtEdq5kXGjO3Pacrht7gc\nwd1A\r\n=X063\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCnmhq5reaKxp3Tz4Gf899bn3zj3/fRQJS1V/loPQko5QIgGugwVAdrcP7pewB62gZYBNXXsRqSWO2DW+UTf1EAlXg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.10_1561472560600_0.6974959287639624"},"_hasShrinkwrap":false},"3.6.11-alpha-upd-deps-4809.1.19":{"name":"@crave/farmblocks-input-text","version":"3.6.11-alpha-upd-deps-4809.1.19","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^6.3.8-alpha-upd-deps-4809.1.19+0e9e5304","@crave/farmblocks-hoc-input":"^5.4.4-alpha-upd-deps-4809.1.19+0e9e5304","@crave/farmblocks-hoc-validation-messages":"^2.3.1","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"0e9e5304edf0f6731ae05e161f6632186264e4f0","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.11-alpha-upd-deps-4809.1.19","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.13.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-DIQVTx8gpk8duNp07+VgOQpskocwlJqhrBKZvfh1OpUtO/lBeqoyCLda0EPXMnGWXd3t+3jhRRI2l6Dorfn0tw==","shasum":"eebcda378e04d8c5e58e102d341ee75dbaa734bb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.11-alpha-upd-deps-4809.1.19.tgz","fileCount":10,"unpackedSize":68316,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdH5JXCRA9TVsSAnZWagAALUMP/2XaNiiB5yAm+V0IbwMI\nCEwJ33zXrFI/VOPf/UlCfd8du6i2F0vkC50HEecg52T7V4u2LMW4yHeXcSBK\nbVTZYNbT0xygqJLevuGu3ygLhJCpk8cMalsCU1Y91YNIhjDjYq9529PQ6/nO\n8Vo6/Vdzdzy8oNPMSB8X3qUmwsAIyaty/TIOMeQhjGUS6po2ALtSFuWlCL7B\n2HRDJSUcyfwSQdaH7GLH4xuzu8/GCZg7UCbqaLq4edJhDHG4EP3cfaH3SBtu\nrergxN5k3pwcFq0p7Oi0/o4yM1EL/y6BZjml0FW6slMnqXAf93lBBk3zRhEx\n3UOhrfp0UWGPDeNWcKUhHIadGx1CXiKVixnziOV6Ur3lE43LU66Whtqk+SHZ\n7Tn2tggRDW8xTn3+uoM+UueTgpQ6MWIbOoAdXj3F2DWlV8wW6sd6ftQJ531h\nRk+QtwilJA9KSk9eOUN3IAHdeY1wvy+BdF98U3RwkYME3twEhEFEBiJuZHty\npNj1ppuMRWZ2ESbRpfqf/qOiMatiegJYZhdxt6cbUoU0Yq/caEMxds0xY7sP\nGfGpXKrW1IzwzVyfl1KsZYEtJlpyd6eizqHrwsbyr8jsbH/M1YB9caJ+KGRF\neZiwoQD7hGLRXLZrgXws5SW1hxnnnF5VHpK5ZmRO/nJcScs6pdRWob5RM7Y4\nHGVT\r\n=WW8e\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHNQ/hRuaGDSgwDiL4b3DJkg8Uak1FEu2k8vdnrjiiphAiEA8MWSozYpDZQlrHcJ4k9YJnAOF2WInWxBuBuLU7KGYIY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.11-alpha-upd-deps-4809.1.19_1562350166924_0.9939596405340236"},"_hasShrinkwrap":false},"3.6.11-alpha-upd-deps-4827.1.21":{"name":"@crave/farmblocks-input-text","version":"3.6.11-alpha-upd-deps-4827.1.21","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^6.3.8-alpha-upd-deps-4827.1.21+5b8822b3","@crave/farmblocks-hoc-input":"^5.4.4-alpha-upd-deps-4827.1.21+5b8822b3","@crave/farmblocks-hoc-validation-messages":"^2.3.1","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"5b8822b36edc620b6950896b5a2d0a34eb0fe3c1","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.11-alpha-upd-deps-4827.1.21","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.13.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-prg7usVDVsN6LIAt/aCJoNKkw0hjrkuHPGR8xeqrpimq3Z+h3gCml8cCbjrhggH7yVVbJ3GysJa9GpOxeJ9cpQ==","shasum":"f8ab300a4ef33e0a7fbe0a28cd3f678608404145","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.11-alpha-upd-deps-4827.1.21.tgz","fileCount":10,"unpackedSize":68316,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJMTrCRA9TVsSAnZWagAACS4P/A3wNYkJDje3+omtobG3\nL8NgfZ/2qEO3tznF3LVazhwP/cdarFOI78So6aCXPNATVIFIhg9DVcAlW4KR\nQph0ih3c0sh3oF6YRPv4OUrFFrKVgVXT0DSE1JeKGemxzbKr+mAstBWITdi/\nVe9s+X55MmOX8Jk3h7uObzkpDm6tyuHdAwU4Khf0CUGxDwDTRoY+epGbvsUf\nX0QVpf7VWgEy3Xh2n7n8yI9vmzhQ81xkLQfmVc9S25X4gS+eOrHmA5AVdjJP\n/8ZprSlHt+Vbbr/hEKB7noJZMi4MwjC2SOoAVMQJapNX6gB6r/DY8/YffLtb\nG4XKXGV6ipo2ruiSmiuXCTTe15CEpZzVB/4eTblmr8E0c6WAcbWuoi2uWual\ntEkbxtTe5D2GAafe0JW4stVpKNoOZaPvd9vlBtC4r9k42DtqdZzYvnTLL67n\nCxGZlR9UIjG2ZUy3kyU4BjoOQByvf5F+Cq0GOqJZJMJl3DUeKcbEFOYD3gjv\nfm+WN2JjMBihVXm9pCX1q//5v1BBXkTP9g4u6JcsK+VepY5hI5+0utw+uHAr\n0LPdFVzmJdlwcfIpRQBp2q7PxNRSqJXkjIm5Nbx2ZnMw/1dpuXIw7Znd45nr\n7Wrm1LtThIcNWdoUGL8mdOiont25jDhmFeMY5LgdIVDnPF1xuc8eye5QxWVR\n005I\r\n=NX6f\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDD0Sj4NSmO13RgzhcH7NsplcXrrY9vuDOKS98AU9K7dQIhALErzCagvwTTl+KvLa3b43J2spskpPZNPkiov38+U0EV"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.11-alpha-upd-deps-4827.1.21_1562690795009_0.004001173044369644"},"_hasShrinkwrap":false},"3.6.11":{"name":"@crave/farmblocks-input-text","version":"3.6.11","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^6.3.8","@crave/farmblocks-hoc-input":"^5.4.4","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"78544ef033edcb2a9f6c8cc436b597625a0fc386","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.11","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.13.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-tJ7doQr0nq1wSGqVzS2EzkkOxzjRb2PuC9OcSVF6/Kh6ZSVO8b+raijGhsUhcyCNStJCBj96jeF6IJFKjDT4hg==","shasum":"dac66884e5b9096a5e45b8fefbe26242f8dcec26","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.11.tgz","fileCount":10,"unpackedSize":68437,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJOpLCRA9TVsSAnZWagAAYFoQAIf4nV0i+mH2rFtsgVFH\nAMqmO1otlb6l58hkwXXNOVaY6cIBFn6O+7Al5C2xUjLRBVlWPlXXxMrUUokB\n8NXeqfgPqa7co7o8lYvtuVgMAEi1cQ4HKsfFFYFHV1cBMnVvygR5lXuMi4n6\nLR5fW4OG3A6LsR2dONmsYaW5s7OCakl9ybuhcR9r+vTVacmG1D0spodqEqKj\n1oG3KxF/Cnre2S9Wjs5FlaFDZQ/JG4vdwGGO/PxdQpjbTk4Dvut7o8N6S1CL\nEGm0NHgb4XvYCzwTdpgWp4NZoQ+KVPPa2x1N2cM5cm+6vW7qjJ5Abs4q7Doq\niPFiya5hBYc1lUaaCjE+JDMlmJoALI4msEQ4GYUL042CFXOFJBWY3EZu8y4w\nLvlSUR81EWO+5iymyat4C4hQHt2Y+solmC/xpb4jGFHppbv5Ce0uvzX4K2GL\nOE28FUNBhOdrrd9evT+MIWT2A7p/Euyvjc6b4gl/d9AbRZKsIE1Wjp/HJXa7\nr9Z/YzaW+UU3nS1wdmwURnF5TgGHl6K92jlqCkeZdi5WDE/G4ik/WYrcrheo\nakfqnPMZhpVqu17jElpRiHEFnhAxEZZENQATTL5WAq668bjiLqHE55H+6qUJ\nP7qOPjOT8CfH4LGq4VcCM+grkzeVLOXb8OmeUDWOopOdBflqcJDyI8Yu+w0x\n0vmA\r\n=y8Wy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYQ0F6guo7tHEjBk0GBb+iEwpwRNy0ihc1840Qc/pK1wIhAPfbtQgJ2d9L9mSAcJvkHpAOdv6MYZa5OwcAcKwiEPad"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.11_1562700363001_0.8075193098542395"},"_hasShrinkwrap":false},"3.6.12-alpha-tooltip-position-4885.1.21":{"name":"@crave/farmblocks-input-text","version":"3.6.12-alpha-tooltip-position-4885.1.21","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^6.3.9-alpha-tooltip-position-4885.1.21+65282d83","@crave/farmblocks-hoc-input":"^5.4.5-alpha-tooltip-position-4885.1.21+65282d83","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"65282d8302a0943e37907e1dab11fbd12aad69fb","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.12-alpha-tooltip-position-4885.1.21","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.13.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-DgQgzupemzIRGZoMnMtFqjDbvxn74uBFDhJYSGoJvwxLNc4V20isvebFfGkOxNrWC7CBAuzigySwAA3AIZ30AA==","shasum":"321df2568078c4e743d320a1185417fb76bb213d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.12-alpha-tooltip-position-4885.1.21.tgz","fileCount":10,"unpackedSize":69301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdLI4mCRA9TVsSAnZWagAAdwMP/1eepo55vTWfYuL5sdaO\nRTBHmKcmYKAayJ/3X961GoEC68rVF8tqMkLkx0D2ndAVj6aypz0XjB9nNBqi\n0eUizbcRRBLxA+bNGd8CpZGoWJp0uSy7lAIe9R2GIrmVQYU+59r1Tdfs7TG9\nVnjnlQ4FoZeAVmCb6ZiLwPslIzxmZ/i19m76zliwQyiRMYNNupGph78dFoH2\nXt8gjD72fhrsZpq7jT5hJiPTrwskljHTF/xEOH2bEgVzix1A4qLfxHQwbd9w\nCQCzVvIucquxH846vZRcI2PZirNcEbE5xVhijgoDaFh0ROIYV4wWNQjINrvN\nAdse9KvJibOvEMut3E/ayExhYTt/z1vWUwjL+coqYxRUtP4FIT71W7FiQRpL\nEh6LG93AYaYor5vMwYMCa00w7/pGkD+uZ2ZkxWDpsjRCJ2+vLBeCbL3je2Jt\n0IoFKI8TejWcCAYBIPfw+j1mtaZ8nHaSXxQ753p8obfpfRO1QhkJUwdbZBTJ\nBjIeESboqkCrwyZDtCpzDsbn4KKd0gjkCSy9xa/MeCxpEXZNE15YFkTQlYzD\nxeXFfM0IV5oJzaeaV6YEbchEMU0ZLVNHlD58i5nXeBwGrlr+1pMwwuMmNAUV\niYBmotkg1KAy5AgHww80Sl9P6388CBAxR0P21lqSBFm8NLmD/MTmmvUw9Qsd\nsozQ\r\n=vjJf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3tYa3HS3KxtD4DalpNjJbRvLySuOvk5ZCDGkZvZ0chQIhAPEYE7dUgFovku64TenOc9/LrHCKRpgYrjcGLxJr1wim"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.12-alpha-tooltip-position-4885.1.21_1563201061906_0.4299051142014434"},"_hasShrinkwrap":false},"3.6.12-alpha-tooltip-position-4886.1.19":{"name":"@crave/farmblocks-input-text","version":"3.6.12-alpha-tooltip-position-4886.1.19","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^6.3.9-alpha-tooltip-position-4886.1.19+5e47c95f","@crave/farmblocks-hoc-input":"^5.4.5-alpha-tooltip-position-4886.1.19+5e47c95f","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"5e47c95fc9cf61a0233196b5cbb82476c90d3aad","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.12-alpha-tooltip-position-4886.1.19","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.13.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-CjvrcB57c1DueR7Hgnp6LmbUXxKGV3mY52yfV8efaJBYRb4F4H+jsN05dyMBA/UPwl0IOF8kWIl/4/fhtu5unw==","shasum":"3111e2e87fab36541d634fad18961ff4f5f95984","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.12-alpha-tooltip-position-4886.1.19.tgz","fileCount":10,"unpackedSize":69301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdLI6CCRA9TVsSAnZWagAATfcP/jQeCgb62B/3bhxX1R4X\nwG7CuA25uLjO0i9ZzgyOGk5srrJGorxM5ZbwbpLqfh90J6bDfrsEHaAyygTi\nH3fE5S0tRAnuvk1d3vyJ9DeVa+tZ7PcZUL0Q3XMldsWsV+o2SRC/jk085do2\nYrhZqAnI8LSbpjnnI79Km/6rY62Lx+EjWBEtpP/p1aFWjJiuwHxx/rf/YCKG\n/vJx5ZuedJXCMqACnQUmMVtccWeyvMFeRp6AtpcXj7h+TQeT3NRa93u1Soch\nsWShE+fYczp6o5TUiidxb0877gQNiaykHbyx1af+bx8nRXTXumBG3psjNxGZ\nQQTDiBJNUNCZ9O6OAOAr93qwZN3DSRWkv1aODWI+mRkQeF4VJ+X1v115i+jA\nWs4vv69MiD6NCBCrh88FUfgrbj0plQAtWv7BwkkgW91U9GGaEKnpKEnEZtUo\nK78E5fDh6TE5Qzcb6Z4RUHgAm8bKGSZ202mXGVlaU0I5sBwm4aKdBT6iZxXL\nZpuMKS4ttctmJ0r4iqme45t8sa1ToIOYq7+6MeZNXSAiWXzlb0RjnJkwukaR\n2CzXMiZJ+1+LXawfnYTnLM+jgT+7ruitgy+bXvPhDC6mVKr7qt3B/jeAeHHR\nxEMsBd+19BZnhg3xuyyPrJ9FEedoZUsPky7m4bzn3SIrI2uOyeNvnUc/j5Mi\nSajI\r\n=wHhS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCnbEJNOQbLlEQObY0aaVWGy0PscrvAAszgxlPH7CznAIhAO5/dQkgO+TgvHLSokC0BULrTElzsTuLLH826E9ALsR9"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.12-alpha-tooltip-position-4886.1.19_1563201153544_0.9766132647562642"},"_hasShrinkwrap":false},"3.6.12-alpha-tooltip-position-4915.1.30":{"name":"@crave/farmblocks-input-text","version":"3.6.12-alpha-tooltip-position-4915.1.30","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^6.3.8","@crave/farmblocks-hoc-input":"^5.4.5-alpha-tooltip-position-4915.1.30+64490db3","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"64490db3b4e7b3d6f996df6f3978b1bdcb839fc6","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.12-alpha-tooltip-position-4915.1.30","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.13.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-9Po1iQQlr3fOPSvn5riWq5H7onXA2eWGdlaOTL7ueJhHGBmCwPoFgDhb3+yRpjzgtW4Pd1USE0sD7zUIsVCC9Q==","shasum":"8a7c89367dcbb55a45ed3aeffe44e32b206c619f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.12-alpha-tooltip-position-4915.1.30.tgz","fileCount":10,"unpackedSize":69259,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdLhnVCRA9TVsSAnZWagAAR9YP/jX6AAWu4mYcNKJeVbGe\nNrY4+EWE6BsORe9z3GvaA8D7Hh/LsvEHGOShlehp56jZcrJBwMHZKquyQrC/\nA8CkRm/QI4d5DyhtOkV7XOy2Ncudwkz+NspSsazCVj9tezLaA/25cm/TfQ33\nI7rG0t3qXYkhXMQhtfv1Fa1/JfaMQvolg0cHPVZ7qbjPBsjtCSSKXLUCyViI\ngRs8UY4zpMB3bTW99G1bhqRsyF3wGiwI+jWfsDuPz/1hEe4ei3lFJ8WEk10A\nm747jfvZ1HBh0GAL8l9wShv+BYX4DDujjceIKjcFlXFeMEcFB+6+PDRYcRxb\nYu8lvUfJYP7AHSNEK3JznkZsHAb1pZFZjwwcebHd0LKPmTW2CXwSRJLPWTBb\nTBjVqRewv1HPChavsUVltpk8FggUue/1Jh6X45tXJLB1wrbWvH0OkqXDBz9h\nBLuRHIggza7FjukmrbQBbuiLHLouEjAErq4tI72bzMqI2gHWfmmEtNd0XhRo\nnbjdE8K97LkzI3YFLocTP2NujOSNYqxDJR7m+TcWaciY0YCMlMuaJIdI3ZWx\n+55o330u9KGY2PMt/HAr3oKgmq6IhJnjvhDSs1YB2WUiIqexts9tJ3rcRyQd\nKfXPQTs460KOFslFS80DDf8CLZCNQcKPk4ItOtPRPVJlzfKpK3SLOWLfeaV2\nqkdo\r\n=NkDW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbdHCcwRQmQIWwSuS582aqOCFMdbFtUBefnAlyyFC4NQIhAK6JrLieiXCkSgtLka9RNReJKhjQMOkSVE/Ea1ITLUs3"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.12-alpha-tooltip-position-4915.1.30_1563302356731_0.7990491657784269"},"_hasShrinkwrap":false},"3.6.12-alpha-tooltip-position-4957.1.32":{"name":"@crave/farmblocks-input-text","version":"3.6.12-alpha-tooltip-position-4957.1.32","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^6.3.9-alpha-tooltip-position-4957.1.32+0eabd216","@crave/farmblocks-hoc-input":"^5.4.5-alpha-tooltip-position-4957.1.32+0eabd216","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"0eabd216ab54aed7a0ea63ab8e5ef575112cf0db","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.12-alpha-tooltip-position-4957.1.32","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.13.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-sLv+akXj1NZjjMGgJM2041z/jOIy2h5+vaIdKg4B5Alnve4O8pRl660GYZYCwO217PeeNK4ec+/oo/5hJ0EXJg==","shasum":"31a756363b4f972e1ac60e85e9b385a25854557c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.12-alpha-tooltip-position-4957.1.32.tgz","fileCount":10,"unpackedSize":69301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdMMYTCRA9TVsSAnZWagAA6L0QAIp8twLHdldoeqv9SBw8\nsV8QjF53whqqpd3jEmAvzNBi3laXIX7o6R7JO0CULdloLta4p8bZHpvg6leD\nbU0DrOc1I8CtOcUpu4AtQ1toQzBM+DLLCGI4F18QqjthW78mdQ1AQG6hbLj0\nXM1jmfo8iquFOCMcWTnGr7FU+Z2YzOT2eM/ILJ4su6D/RHX4M3mGoC5SJ0CN\nXxg9uyBVCaUEftWsYUMhsXjx+68caxpHyo3gJruofKPmLdwfRHwUhDvdcrNT\nl4CfJbPjuxyO6sgFOWE7M10ibHDZdfVabdcKkzzYwhfWGR5w+eIPwQQWC2BM\nsoFr2SgaZp58QpluIQKpnHCfnl/NDh5hP3ITgkKvp2nZ0dF/uXgZnl5KCHRM\nmKYaJnH3dZNe6S0+rHCfMqMO/cUhIAgupCdrixVpba1Uogz5ZDULjyJ0J6XV\nPMkpmDRLJm2a8vfQ8ID+TgGsAG31JqPLs92G1lJoLmf7xoBgwfhrTN9eymKC\n1H7150xlPSi6JUeykq5rK6TsvIHoyCi7VBqhAMcUuMJjHM5Yk5GH+mgk424j\n6GyhlkRN1tKTieCkRTKri1rApUETwn5ggo2TTCcL03TKgGa2/u1y9mgSZ4+l\nh7I30zToN0cVs51MlBp2t1ocejQz3+UxZ/J4lar96/RLYs+icg42T+/TTbIm\ng+4l\r\n=Jwqn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbfo+1wYBJzVmBNb/Do4pvehtkqJVwUs5T2FOvQX4QJgIgRn/baOgpl81gLkV18OQki0S7az/DiiF8e+pzYeaQxQE="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.12-alpha-tooltip-position-4957.1.32_1563477523112_0.538820663656272"},"_hasShrinkwrap":false},"3.6.12":{"name":"@crave/farmblocks-input-text","version":"3.6.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.0","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"6d3e4fa68dfa12d7a4988b095d6cf2fa2541cf99","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.12","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.13.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-FrN3D0c9homhWHuFc0xKKvE1EwT2jHvQPLBuFImjK/l/nH/EOWT+rmVXZ+DPkq0BHWWKWxP6ofYLqUTjCXD/CQ==","shasum":"fcd41bf3052da3f26e9b4255046a8f6c39c64632","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.12.tgz","fileCount":10,"unpackedSize":69398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdMMk0CRA9TVsSAnZWagAA1IIP/3/ZNdi4FVEy6kRnX5QG\nDbJEJgnLdOzKjfVL7fW0Fz03B8AHN00+RsouEu+R8bHPFAmBQa9YR0NSayWP\nMbGG78FKcQJ0o9qnc7/VW04kPf7gXKxVYPbYrQOUVtolm083S1zjDjiEAOfV\nkFu786dl5pnVGpwK7ClZ9MiR4iKE7nnG2vFZZzomhUd2dVA1obxQJhlFvyEW\nJCiWOk4+zjfJ2xuYRfFRdXJ43N/CKHCDO6mQkuG32o9wSLZTqgPntdquXszQ\nnsOn3Z7caouCXEWM1ye1uDK1iN2zk09NAKUvcNFQsHD2Bx4j67a4mNJnIGOb\ndU8MuGPfzeVXkL+Wf+tQXKzFsLJPEWW24hQ+xLxQMVm8jE1fE5kCNfFN1D+G\n4BdPr3XeCYOSPiXrRHBs5srliXdb3wVa3nAccvCwBCbp3WoSOrG20viQy3Q4\nIDD1is8pyPjfVz8x75uQ2sAtwxKgpcfWKnj5+5zw9QvB0xxoLbWD6q3MQbys\nN/4901C5GaOrMMDlawUv9g2yAQo5/qMpA46jXUiQo/YDPwVkT6CWoYbJJCGx\ncL/ZUpDpMYQHpKBe7dj1igV1ZLqQD2mtqO8eqxAX/YL99rsrC9eFKQ5E3KYR\nz6/cJdFmQ9EJSmTA2H0Y7/IQfGRemodZzge9FT4AbEA17T92Qg0JLzXkTf+g\nEM3k\r\n=hI27\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICgaQrBiHJonMUhjsoCjmI/zmFDGh5mbsVbfA5QUjfVoAiA7JBzLh0sN9hMkk/u8a96JotNgm20NNCMmEo8+jTDtCA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.12_1563478322506_0.14952664020061568"},"_hasShrinkwrap":false},"3.6.13-alpha-fix-empty-state-buttons-4980.1.4":{"name":"@crave/farmblocks-input-text","version":"3.6.13-alpha-fix-empty-state-buttons-4980.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.1-alpha-fix-empty-state-buttons-4980.1.4+f3304138","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"f3304138c5cd3bf7df2ddc9d7e7a66e50ad437da","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.13-alpha-fix-empty-state-buttons-4980.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-mRCRFStE1i9UpGUyYKc51kNrnQQGz/KDFGbsAb0IpA1W3dPwM8OphoSO8jiCT7E9PXpRgkjFjQODWDYvm/tZ/Q==","shasum":"a883419c8a1d8f24ec56c7d768ab6e97f515e3b3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.13-alpha-fix-empty-state-buttons-4980.1.4.tgz","fileCount":10,"unpackedSize":69494,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdMglHCRA9TVsSAnZWagAAtPwP/izWltjoo3nJqWDc/0Es\n8gUPpdD4yBf6Y/je23j3SlIgoRi8QyWsBSbMiB2/MXFbXMoECytwpMZ8g7hA\nubPFEYW/NRs/8bWxWuVCZ9sWrREn+3zZsggAH7wyPgfdlJNVJTp372Zq1Osc\n9Kn+CRbrcCZ16z2guRtAvqHJNqgwzi11ucrIC2NmU1Zgc66BFAuQ3xA9hqse\nP6SJ4wdW4lRvTZ18vh3qMKdX97Bek6o/AI8+y5FAWtrYNhJdtTAJkR+60pMT\ndkg0CVckITFP/k4gyK99GKBjs5bNF2zwQawAAbJWYIKAog909sITw/jXi5gE\nELOByxeM2RLfcs1N/UvQPn1U64b1LkymjZDBM5OhRk4vo+oLbHgtaS+yuO7A\nDBaoRWT8N+5i6sWg14D9lh6/Bx1Pcxzss6fleIF3jb1l0cPO+/lH17aYnsip\nrS00cPJ9lTcddx/tQSm2jV82SNeVCRO1sI3Yc0NlnGQ4B6tSbnts1qd01TRx\nci+0OjVHTEtgReFZTUNE0nbkFGv0AtlSyfW6YDvGQTvJqQtqUXm9UBwmpnmi\nYC6qzd90FLUMQHBDLdTQtEflHUZkPueHsna+ZzMOZCApVSt5HAPJt9PDEAIq\n9qsfRn1DQ0Qbaishc6GPl5V3JkwsxcLtq3n5FhFMdgNAUmpX8aCuM2irqa8X\na94i\r\n=R2Km\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCoVv4GO5zV6jRXCEw+N88C2Y7F9Ywx4wQeC/qEZnfBBAIgcXePy9gDMVanoiu4kKDJQ2XrJpDmH1daeJS+ltFvGM0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.13-alpha-fix-empty-state-buttons-4980.1.4_1563560262110_0.8500787774789766"},"_hasShrinkwrap":false},"3.6.13-alpha-fix-empty-state-buttons-4986.1.5":{"name":"@crave/farmblocks-input-text","version":"3.6.13-alpha-fix-empty-state-buttons-4986.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.1-alpha-fix-empty-state-buttons-4986.1.5+eeab2bfc","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"eeab2bfc47b583aae02a18ae84412fc2a4cced4b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.13-alpha-fix-empty-state-buttons-4986.1.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-6G/GAvPLTpq7ppIczMNwOm9xabSxKQJJ31aVbaDY9xhO6CTvI5/MvXVf/WULqvUjwrsEvnfDTS1ZiYqRTxfqng==","shasum":"34a865005176b11be597e0b86a13cf981a2d2d0a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.13-alpha-fix-empty-state-buttons-4986.1.5.tgz","fileCount":10,"unpackedSize":69494,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdMg2rCRA9TVsSAnZWagAAvUAP/jH43dlAq2XU21ukWnKC\nisukdQMMe37lbCy9AWcvdDtEVkJUhwZyi2FTvI/zSw0GUNtKNPhVCZjlzDFs\nCvcTS+hYz9Hkl35Pg9KPLmBsUOWv7uQdBsIq0kJp4aa3a/v8um+PT74LP6i8\ndyyJlH/0XkisY+yIFxT2dbyBjHV+9+2ZKkTIMm74HXL1tP0VGCYd22BJ8KHP\nPIQtFmWMZ4Pi17lzkDUWf7nZPE0x7siqeTCo+AFKan6ip95CbqmHoAdu7SPI\nTskEZRhfh6lnRgLqAHfbiC28j2Ei6yTWr8ZWxU6UkC68jqHz6sYtE/DtP6CT\nNcwjgjZFQiRRygq3CxVQu2x1sgiZC8Frm+/Q6QYP/1PjLX7MISv3hQQ8L2yw\nDvQLEDXDrXpAx3yP/RNq2T2MglAS/t3kR3HmWneqVdUvKKezuo296/STApnX\nBfpciciK6Y84gzuLRPcPVJs6BgqezGP+drpkGYwUIpomGFtNeh6t1l8Z2wj3\nyVvnrfPvogg0wmOu8zgkoKNLhlHbas0ZBau3xjNabMkZxSMICY5hMZhj/BAG\nVrJTLSMVYLFkbv+lybzOTnA5J+1O0zjtv5py++rkTtuN+BLB0h2n8DPfaV0R\nhKb7NlwcdnUmAzuBu2D81XCs2V2uJBtJqwBB/49J1hFyH3p2WMu/vu+wrT9L\ngEWP\r\n=8z9X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIQCGfLUDiLGxnsuN026sNnCOHtXP2MuGmZGP9u3tPagH1QIfKrJrcU1bUgcVjDtM6TA+zRfxZOPOAqdvED6WAg1HbQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.13-alpha-fix-empty-state-buttons-4986.1.5_1563561387058_0.70634924083366"},"_hasShrinkwrap":false},"3.6.13":{"name":"@crave/farmblocks-input-text","version":"3.6.13","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.1","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"9d3b9b490f38b9330cf21d830ff859cf2c1e51c4","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.13","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-lPSF50ww3j1DZVs7VPvudPXiYuSOdtgzKXJBl2PvKcTG6STPxD0jwbhDHYRtuca3bBnlhdD9XjtEwS/lGF+bVw==","shasum":"2c2a9343054ee6691b666b2ab84f8a31c75e6eea","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.13.tgz","fileCount":10,"unpackedSize":69621,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdMhuWCRA9TVsSAnZWagAAsOcP/3FbK6KSMs/OjROaJEDB\nYfMneb0Oeb7gp4Ttc9zanxAWdJft0wFZRX0RFx41LuROUXcbaaa0NZ2RFzJG\nJzfPLCKOd4W0WTCunk3N3D7/RiMU1gew2eftZOOnbAoA3jRLO0cGBpcEcXpu\nq/INk+DG+SS2XW4xyn5aZIQOvuDAeQai3WEx3uCauB1BR8rrzCMftDRN/1+4\neHr2I37DR9WXqAwApXAGEmeEGK+1ZGOLDYiN9fVut4abN70DBxw8BuTqJ/IS\nEIhjXfwwrs49dukomSP061uF51iMHAhep1jtBc2QOmpAI/85b97WzCEQPgay\nzshs8Mrpf3n3pFng87gaIK0ZjJGAqWOLaoMVTM9V99NtfusumwcZfL8k9cuH\nwKi8R/ThActj7ppjnr2A3fK17osOFp4eGnlK3A7R7drPmDB/V5/EGDASi7VD\nC7bvopV63W8HF2PM38lHZDZeBiGXyZLe4sw/LY605prUbEpJKfdczs1EXSz+\nVE5CTaRs9ByNyIeN1Hnc3CmYZiBfDiP4gsBB2HDlog8UCK3oI94B6X7xdx83\n5SCjGUERt8/Yt1XxNiE3WwQSTf76n/d2/ffi0oRJ1skB89bTEvBiY+SsegVV\n+JEBe+6aJH8ovsHqwoBX9GlRQ4Go2UAtpWzZVx7Bo8ebDlZirdhhmm7oMXEb\nlZRf\r\n=DrM0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDsex6VfJG5x2OR8s2Pq8Mn9jr9gT/50Ed3jYeojyN2oAiEA6E5VSjO81c0+DvxBmONCNaSvFUGq6m9dptDh3EC2mqk="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.13_1563564949698_0.34460381871654566"},"_hasShrinkwrap":false},"3.6.14-alpha-fix-protected-input-5017.1.3":{"name":"@crave/farmblocks-input-text","version":"3.6.14-alpha-fix-protected-input-5017.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.1","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"cd177a316254b9320bfaae949612018acb32820d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.14-alpha-fix-protected-input-5017.1.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-YRtTVOfyGtAGV/3L4i3I/XnMW5tGFzjHFVL0RKgAC5Y9mvI0rKy116AOmQ/MBJK7NDyIgXYnJtviIk441wmgPw==","shasum":"3a1d8264329457bc1569c679f61e55c45afb350f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.14-alpha-fix-protected-input-5017.1.3.tgz","fileCount":10,"unpackedSize":69688,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdOIFvCRA9TVsSAnZWagAAsOsP/3JPaPgtBGzDm2je9CA7\nJ3PrziIdVjjC/+kscdszEZUThFwRTQM+VbtAWr/OXDxpop89Q7gsFB/YvnyZ\n8qkkc9QP89nN/kukCfI+MBfpetxufzzG6fXHAm9hkCR9aad/ERvR2YPgCibY\nE01TTQFEejI4/giOYM+665nqBYJN7QOw0PsQ19ZoHRM2/LQaYUcl0M5MFz0f\nE5U6FoTq1aN+Pm0z4y2BSFms5ZgoXSNVz/lM52kjz97kd71A4UrhEW/7y6Zh\nZE6tbIXfTY0OfSj0ZBfzuJr1icCve/vbY/PXVSOrmCn0FNO165PsyyIMYARU\nkX1Dx+63ghUtYueNkmAtVwo4zlZVGdVeWYJrhIgIWI2KYIOJLrKLIpGgxrp7\noqiC4gwIxzpadaRhkyF4LhCxxj6JyuZP3bMh04beS8o6ImGJH2hXUcHRN+LU\np8kfC1n6XIaTVVjfZywKthSXe52kcNBp5b+KQ3AyU4DozQOLazomuqxwIFzT\n1sunuIuwW5KCJO46vwMtjyLgTjK58siOZslPxmkUisNW44BEjMQumVdmyRvD\nRAoH/zNGbu+Uk/rZBHOjKxohQ/AM2og9MnEVhLrAiLL1p4uYSq+2vclg8YWK\n5OpoPAy9vRlprDmASMiQyFpN9k791x1M2erOVAmOgxJ3e+nuj8xUj4LBkfKT\nuwFy\r\n=Amm3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOonMhGjYvUAVlbFo8l8ieie8U0rpL+yyQR4WkAUSNXgIhAK8xKlBgIIFOkb93yY9hfVeKw5S1QyX1mxvyrOg1zXCv"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.14-alpha-fix-protected-input-5017.1.3_1563984238675_0.6757600020949772"},"_hasShrinkwrap":false},"3.6.14":{"name":"@crave/farmblocks-input-text","version":"3.6.14","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.1","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"9f2e9e878c672261a7b0db0db4e87aa9ca72b670","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.14","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-O8LYDJaxnZ3oI+zM4YJNNTOTgZSha9nnolFaKg3+7/n5yN9dljSZfe2tmgznZO147xBIixDYzN32IttqkIS9YQ==","shasum":"4eef91e262dd5a983ced70e1058c0cd387ad23d8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.14.tgz","fileCount":10,"unpackedSize":70002,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdOIvFCRA9TVsSAnZWagAAfAcP/3L2wQCuN3DaPTc3fq1T\nUIDlCbm9jCjA0+zwbeqj3HLWwp230fUQWCxaBJQBS8j+zaBb+8SLr5TPU0uK\nJ0n6cHvDaKaG5rfo2igkmzibWS5+ivDQK+oYeE0/lzIbKXmLF6bv35uhxQ5W\nLdL0GKgazzDMMRDNc63ywYFNW5bIKdN/Lrq1Ev3DrkvstRAc7HEwsCvp/4jT\nrw6tWWiwPYmq1x+R15pZaayM8Lu1fGKkmzZ/OyEvNmCYVJzVf0XC2rtiugsP\n/M1Lh81IRGWTRCu16FnAuUtUBKGp/R/uHfo3AWPK3Mdute0QV4+Ytflq4YIs\nmrJbK6MbT8lGn3A3Hia5Thk2IMsCrm2RicMAavUbbLkwfqMrQBij+J1FmBp1\nMLk27cZXDib7EepFIYAEKE4wYmYzTtU7MQkAG/gBxECSYSswDZrd1BIzH1Uq\n4cSv9JYTq5kLfbAn50EsF1nvZ/pPX0/6IvERlrRJr8t/Exy/Y7iXMcvs2uSJ\nQGESWFCMvqA6xvwCwss6rDGmd17LUHjTFNFxcDmTAkc0Pw2Le6RMUUrjjZw+\nLNENJAKo2iWrjwi4cf77OjrHoLaDJAeRe2IkArRFt/aj+UnYs3IUPyfgQYDY\nC+shzURv4XQ4MlZN+ABQXy0mvoqzBKwXIE5poFr8jAmLAeEjxGnLJNzN/8WV\n4IvZ\r\n=gaxx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCX7aJOeKYyF9EIXiGxj0Jm5ZULSXLy5x9Wx2Kl9YUUEgIgU3QoKkVn+1krXLaQMRqQ+kSvCyYwNCYNzGbuSAtm4WI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.14_1563986885256_0.49030072229232347"},"_hasShrinkwrap":false},"3.6.15-alpha-tooltip-auto-positioned-5024.1.2":{"name":"@crave/farmblocks-input-text","version":"3.6.15-alpha-tooltip-auto-positioned-5024.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.2-alpha-tooltip-auto-positioned-5024.1.5+e298b660","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"e298b660655da180676ce1187eb717b97f581c00","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.15-alpha-tooltip-auto-positioned-5024.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-bTwHXeg2T07/LJXpQwcmFAeTmFl3ckFfqS3Jff3hpUymCB8D9XyDUp9J/XhhT2bJ+uPJ8yGJGuXySp9ObrUsoA==","shasum":"117ee4184eb4604d07be8d498d501a4a31d53462","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.15-alpha-tooltip-auto-positioned-5024.1.2.tgz","fileCount":10,"unpackedSize":70098,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdQExYCRA9TVsSAnZWagAAeSQP/jbAAWMCrGuFX67Q8L0j\n95m0QE1LLxOEQs7sP1mlaEeNkGwrSw6pvc6Dk722gdrgVmxD7Q89MiQeRn3x\n86f3C+TkraDHqZyczbi+bA2DoBF7qpTjFZWO+AP9BgfY3TFF84SPniTD5ayW\nsIjBigqqi2wCOK8mUe81kta93q9umImBPWCuHiaJRdsSsZUFrPuylro5M/7/\n++klQKMJz6ZcgD7rRKJzCAHxab9JzAk68XrF7ABjoOI5jtKpz35AfvoyKFXP\n+/zoi+xBsuFwuH/M3uy2eyoIUd8Zj9mjKSsPai9+qC4jAyx7G4f+Q+fVismX\nTGh1WzlwqcNmeJCbjzSV86OlkgOBZjlC4fTHPY0bQx4EyLu1nMCzcZIYkCz1\niVyqazxEwdVhDHhqgLWqd/JhNC1Wb8yxejxVl+lXYCWz6MYaBayAjNKBYj8E\nuta0QczqeGOQfBRRteZyVqSPTPWA023To4cDOZ3RoTUUSXvPrm1ARwKDfeU7\n0gQeJ98Rn9R5a9hi5i3HdFdZbm7muoQgi3Ops8Tztc6/ktc6Fod+Jn7WFeCQ\nDVmfer4QrN5+ZRmReAT6kUjZGT+3xHUghyLASP8BpW5q81CrOzG0McwpyzGo\ngCxpxkvOjreHPG2cG7XQvj0RlzNaa4jQwk9SHUKqM8jyyXEz+i5nrstcq7Li\nwjC0\r\n=jG0u\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHLsw+Id/Od2V5+TqDVqE2G2gD+s43F7RzRdUlFdhDPnAiBLR9Fh+dn4M7YnjiTGimuXV4sexSI/OYChlwp3WKsvxA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.15-alpha-tooltip-auto-positioned-5024.1.2_1564494935330_0.8024521758151026"},"_hasShrinkwrap":false},"3.6.15-alpha-tooltip-auto-positioned-5028.1.2":{"name":"@crave/farmblocks-input-text","version":"3.6.15-alpha-tooltip-auto-positioned-5028.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.2-alpha-tooltip-auto-positioned-5028.1.5+88d864b6","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"88d864b65a744165b061e88eb51a27e74a8a4eae","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.15-alpha-tooltip-auto-positioned-5028.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-ul9ak0MOR3UuiUzrxMXOFrEP7TYkb33PjeFrvBGETKgOtTUoeI6FuMrbFo+3pIzM0zvW4M8IjeaIBdOJcsMFmg==","shasum":"d41fa9762e435442c116a48b2bf6c64ad8b82d57","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.15-alpha-tooltip-auto-positioned-5028.1.2.tgz","fileCount":10,"unpackedSize":70098,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdQyGoCRA9TVsSAnZWagAAaDgP/AiVxrAaz+HYSPWwOQ4e\nmr/oY4OTBUHKHZ8AePLAemWTrREdVgfc/UzpjMU73EpW0Ep7+fcDH57zCmu1\n8UQ/KAZbGGcCg/GfjH/QZc8B1BIkOHs0lu0juG6LZcS0v8VGzolzLWe8cWdI\nSE3ibnfQdXBGHKVRV4EmlnTE+yMsTCUrqMnXtwLcs2uTxC8Ju0YSgOiJY7tD\nfFR1gMwOSXbkjUx+AC9YIzyCqjIc5FPw+LnDAkbb6gDAHoSyVRfM32GncCN7\n5rrGxHKz+RD8HTor1kfLJSMJf/BibYs7F/nGyKfYRehSx3cf67a6LPiaBM9s\nwG043rpNe51CvEPoegRRB5ogpxvcrXqVbpMTZzeP9CY3AYUB2eSmoPR527rH\ngRp6VSszxaE0IMU2Sv0pom3YBx7nAHocMdzvXHA2I3yj6EZKC3JSxN07i+Rb\nYuLxjY1mSxndaP9aOaJKHmS2MAw3Cf5bDJvDgJ0CMZhrbzBB1nwlkEI4mtP5\n7PwszbSsVKm77uPOMsh5uNTU//yVNbdZr0Ogh8pYQU7qHW/sTHql5Lf0I2E0\nNCWSw6Z4FAI3twVf3abGKJDjymA6FAiOjX3C3PSXB6GgDQ4wBqB3fQmzwz18\nqArEPWM4gTHsFx7BsvjpXZcugQiHydD1mweJZRSat+02Mk9oqH/nlNHViMZi\nyipi\r\n=Hkhh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFcTOGlMvr7E8enwo3LaH6BprWvd0nYJQtG42/WeWkk/AiEAn4sgWQNoTB6pjpm9xsMy8HRaG8WB32/f2WbyQ4uMDhY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.15-alpha-tooltip-auto-positioned-5028.1.2_1564680615522_0.4398953886732868"},"_hasShrinkwrap":false},"3.6.15":{"name":"@crave/farmblocks-input-text","version":"3.6.15","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.2","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"d0e3f65a49f059c435077ed83c4c8c36fc146e0f","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.15","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-2/OvPQ9uvr99hnRb5Z/2cizWgqxAGewKOQeifuesasOvtN36zfGmE7JR40UF34RfADsl83EXCe/PL/6t9MOeCw==","shasum":"35be169796383a21e0f4ba28033f0275f161e01b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.15.tgz","fileCount":10,"unpackedSize":70225,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdSDz/CRA9TVsSAnZWagAAYuAP/iV5SNDFsXB2Nt8C2Stk\nHjYLSWJL9bQmQxTthJ+/Sex2kmZAzLxWZ6prbKkhDEnpWp9cfA3oBFqC/Y8U\nyP2JkwFz0zBVPbdLNpuxqaR3LeQUPZ/6FX2rkNs9/V1I22OC2AITuxvWJfx7\nZ0uYj7JyYmy4V/FhxJ9UhTJHHcgbRKZbcXneODzFFZRyP8yGYGD5CAH+7Ikt\nuusZsVyYNLCzsu+VFEwyjUyXBjX/xSccFkG9f2TD5s/20PyEsuQsoHNyxWrI\nDsKTj+g1GMdzavzk7aO5A3swWwNg9W0iVmKR+X2kfjFX3pnoIwJNvxsYrBMK\nuSZsGSlZLGw5qoteGEahn+jLZeISJ3Unz27pqbtdst/S+RDKrShURVzO1NYO\nenaOxz/rIDCKxFrtdxp+79o8nR/35sRnRc3q4gUeXH4vHG8NQJSkP2DQ/5El\n9GhXLHa4Si217PVFOyDyMHJ595ld59Ls3Wng9trQbs9FoTevFloRi7qqEeLK\nr+UN2KtawbG/pxz1iGzYvPUKCqxbJAb79cWtw/qAePBQZniK0EVeHsgzPmZU\nPaRtncGz+v67U522YsuSB+PxSjKPfckBlgnoyaFWorCsxcogXs0dpL60dF3y\nmidn+08ZnQsW1SiswpK7ZHKQoz7dEsBQJN8T+pbi2+2kDDpdjhY+u2eNTolQ\nolmX\r\n=+mxH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAPMAWWOeGcRzfD5KwCdjxDVUEfU01F6eya4lMx938nPAiEA7xh2jSgZou3VImbDkXSoPoYRtV8vBpYEuqJYkt82csU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.15_1565015294498_0.6868226150862309"},"_hasShrinkwrap":false},"3.6.16-alpha-tooltip-z-fix-5043.1.2":{"name":"@crave/farmblocks-input-text","version":"3.6.16-alpha-tooltip-z-fix-5043.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.3-alpha-tooltip-z-fix-5043.1.2+1aa5cdcf","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"1aa5cdcf676c1b151ac9298c3c3e41d58fe349e1","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.16-alpha-tooltip-z-fix-5043.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-4CQauaQCaAx/f9FsmSuXlgyxAMplaLDk66Sltg3Jypvu3MaDZ8lh9bVZCyysMvhGQJoVXWAq+PvZH4zXpTYxJg==","shasum":"9669a133872c87825cd611d435a9f1c39d07cca5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.16-alpha-tooltip-z-fix-5043.1.2.tgz","fileCount":10,"unpackedSize":70301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdSz6tCRA9TVsSAnZWagAAc2AP/i3YL+rrjP6yKDhRtP8c\neMakLOlvGPBw00YR/qNPmkCH7XnIKqgIf/WbYCIRnFXVgbNegi94VwOXdt0X\nGIKBJSQe9F2B+Ewnv2cXvF3PVKqW8+gS5xjSEW60K8Vs/VQPVd3uBr8DKAMw\nIofQvCJttXb0NTO1lEHugeCAnHAK/gbSMwFjuuQg12F9iWH707JaHDDkhPP8\nejG4u6d3/dIoRXutJ1BStDQxlFc8D6/GC2KVNcPS+gS3n5VwNg0BfgjcODPJ\nszjF9wiwrvZvPpfDibls1DzjAMkJ2f9Tq8yxNYFLkwgkUh1M1d3Qi4s99LEM\ns15OiNGGy0Z/eE8TC64R/pdup5wkTbFr+IaTxkGiQO4kxQ+2R5mk4vdlM8Zb\nFLbVdpQSe1oHY81uLv2GEAPIKWn4jjlymcgxC9hS0Cg17ACly9gPWMZZPLN3\nOtr0N8UImb8rQFcV48KG+zhDGzYPuBFR+EcM3kNDMkSioNjUc/Kv90HGu9pl\nApxBHlEoNLSKF/QwcbAgw0Xbm8cVFqwts4JW/F7MuMbHhaMChfvmNJrhwWRK\nwlz/lS6VaXYM47nju0eHtFID9ld6YcNZk57xPwxgRdSDGkp2NOY9Vvo+JlX6\nnLB705BqkSg1NLRRMGKDz9yh3hUNAyEKoU2EjM/osvgcTDO+1/xqS5TH768U\n6ee2\r\n=o1xy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHJKSsfrY0eVnVaBloFebTiFsxGc0wPvrQvGksRNz3bLAiB4FHqEVsgH8MXDd+G1mJOWEIuHGHUELFWY/proshZEOw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.16-alpha-tooltip-z-fix-5043.1.2_1565212332501_0.08635327229876899"},"_hasShrinkwrap":false},"3.6.16":{"name":"@crave/farmblocks-input-text","version":"3.6.16","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.3","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"6949a2294e2eaea0b9536b9b29f2f3d477dea504","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.16","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-so8FFRkwZAXiUWEMi8XS3qzCabkkK13D8Yia5XfQEwG0yf3D0nYHDRTUPheUFUiESkInBTZFeC5JB5hc7eOdRA==","shasum":"23f3a9a1157db02a3b3a019eb4d721dc6d38988e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.16.tgz","fileCount":10,"unpackedSize":70448,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdTWupCRA9TVsSAnZWagAAKTsQAJc9exGRal4Ge31BQbCy\n8hn7gSQFUnGk0KbueYA0luUZBXgmJqmTSPFyo5WMfp/j5PAOnYcj+Xw+szyu\nLV8bRSeIAdmXI1ywPPh0NgnD79hTWe4HhfEj0LSptFraV0loFqBBzapr4gGt\nt0PEaYBMvoaDDM+jvcVcX1mHLzIPX8x7mMPYYea9SmA2uE4kjG2l2FLJ7v0T\nkXK0rP6O9ow4nMBdiuVCDoYyLaLVUGtd5RdGNWxKSeYOB40qmTt1bHAVn8Ci\njKBhHBsabKnaT3DKzm1ZXYM7gKfnLhEaNPJT7GXGXW9HsfXq0zG9XwTSgjvB\nAdcKhv9if6yn++oB1Gw5mdMOKVUIW0VXMtuV6of4d7+j8W+dbXWRpGHc8eu5\nzV6+BD3CzyVRFhXTVwtKpU/5+W+O3PAVntZP5glmRUDf3XCHAMO5rDNZV4G/\ne/1yZssJiE9jgbJqkAzRMrWLMk3X51oXGTP1zUorVMU2aUqZCh6HFD1dZb39\ny9h3h6AfIdeyVKo7R6+x1JM3KxwOYdBbdKZuZY1n5QOkgMDAgIqstvBhe2JZ\nvtgYL52c/lVA1l1bncMclCmJJ7Hwq8udjC3KXTGBuiXHPBwZd1MLq0n5Vv1d\nm4VvqF5QjfC6lN8skdatjO9npVvAMJXfP7ASdbv1r3iXCHO9mU925fmKmH5O\nmk2q\r\n=NDqf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF6TYhSVSt97K7rXGiK4w4k2c/hvSbA/1q5pKMAVrva8AiB+ZZ6wNJdlFn03g927w2eyO2M8IVr9DTiWsx8ubQqe6w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.16_1565354920766_0.6437751842434991"},"_hasShrinkwrap":false},"3.6.17-alpha-disable-amount-selectors-5122.1.15":{"name":"@crave/farmblocks-input-text","version":"3.6.17-alpha-disable-amount-selectors-5122.1.15","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.4-alpha-disable-amount-selectors-5122.1.15+5bbd168a","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"5bbd168a110becec621e3a05c99575055760c78d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.17-alpha-disable-amount-selectors-5122.1.15","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-Bek+31phn4HYFa2CsSMYgYhsntCVb+UEwPxfm7xlhart3kypfx5UIrMa7aetFkE27rCFjUZ5FUj3smnHeuPKAA==","shasum":"9c688ecda37c2a54740daa8f55d8e1f10d70a736","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.17-alpha-disable-amount-selectors-5122.1.15.tgz","fileCount":10,"unpackedSize":70548,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdb+k/CRA9TVsSAnZWagAANIsP/iyWVVdyuB9KwvJsNZ4A\nD/+7EwWsvTdaeDCfJhMV+Q4CunT1ovGXv2TKU7G04rB9/nnemeym8wRe8AWi\nVKvtkCKosTJ/mAefFopVAvt/iUkQ8NJoNin6ZA0odHLVC5YZcnBQaOGClWwx\npFmBF0wEHnoFzseuAcZlNs3NPHSArKusdSL6JFD7J17pdTKepXLy+9hTkSX+\nW21EYwxsjCcxO1s+iuPrfc44JlXalVOMl01t4hGLCxR7s0jS2NioCO2v9mnc\nDX134aoeOJQj1UTA4vTjr7VdhUOrRHjPtH2dZLiUOpx8+l8YxHFfRVqJpj5w\neO/LsxcalePc4RrXXHNkuR64vmjwLjUyonL251MEenK9Aw+z1eIzU5tSL25d\nKQs3V/15E394EE8mpKt200sjQ2xsgTTgVm5US1rzFVUpw83jn6qFWRBOTWe7\n9ORI93gouj2LN/I9G91eU3O6vOzRaVuWpQdtaRUv/+1uqq5gfkZX+kGWIhF8\notSEYi41UPWj5ZJyfPtgbBVj268tZiYqss9Eq57VkqS37U9iIWv+V8wu9YgQ\nq7jdCIy4om0sv+dvcDHuLP23d5TlE+pK/nvk7WbqmRwrloFHkOzWpK1xUomZ\nOqVfLNK8VGCxAD42iOKRRWRZncZEWQtCg+eqXFmhAuOfpem9wqV7GfIT0BuM\ntr9e\r\n=PeLu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCJ5GhPeoVAGX0Hpbo9nNb2va1kXq7EoFymywCE1lDQHwIhAMARZOX9m1bbxkciVQ2rZaso+LOVY29GLxpstCc9BEP3"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.17-alpha-disable-amount-selectors-5122.1.15_1567615294919_0.16102884397091"},"_hasShrinkwrap":false},"3.6.17":{"name":"@crave/farmblocks-input-text","version":"3.6.17","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.4","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"3b1029122e8a6beb04fd68bc32799ea820cd18eb","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.17","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-Fpxty/1qMLgTXzRFXrZOstMNxMv4MyoXkd25IwDLwck8Rp/EHDCHa99gYxP+kG26S/ACSopWx2xWQoExlzzQMQ==","shasum":"253518161504576c4c66d1cc0c01e998bef572ad","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.17.tgz","fileCount":10,"unpackedSize":70671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdcSDSCRA9TVsSAnZWagAAq6kP/3rNj80ztKJrN9V+5DK3\n1Mo9huy/mwfXHa+yUnqnsKQDCwKpYWPT8GipmBtSSQz6JEpGAUioWKAkiFW8\n51/koSTsufyvWHyz5i4yxq8aozEynPdzwVWk6MwcmiIAzJ0nN97fMGQ7VEQL\n8li19HzJhfEghtMMSAtRNdua4MYgN68EtwfNyeWGfUD8wtX6mhLPCJmXJ9Vw\nOdf/Tzug/5c7VIRJUCRQASTH4Wdy1IO/0jOkOJ1b+N7JKqgkSm/mgcKONaDi\n6nXVKt3CyhHNQGeRiHTFLbvmvyctSUU8PFj2fRL9lRiX9qRmiKNffef2Ru1u\nAxNYuFdJjpnh8ppMviHQKXreF7goSKovh/2CBG3vh+JSnB+hv/OXYlNi1WBC\nT1Ed4stIYmI9Jhw6uULhePhfc7mGk3UF4LYHNoc53txLgXPOo4SV+E9IgBnY\nee8fZAQdm2nzbsJCVIc0DRWrbnokxTfOP9w7q8idvn64X98TOoX/mRFBPQZ4\n9g46T/bKcsf/kzl7rR9X5Sao7axCLk/ofk/0InwVhRnwFc7gdE8evpeeI8GR\nwlIMoKvb1hgB09EMOl2cUbrNUzbwV0po0QzInmXmlfyuiIOSolnZBQYfU1ZX\n6oLeePB94LaAhrWyp4o3LqBkcpwEb9aQdsz/Lqcrw31suNPd6NKxOgURErX1\nTBdn\r\n=J/Ar\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFr5Qo4BEFsMekXzRt5tRa4adIy0QsB1s+yUZuYgx1iBAiEAjnOdbAV2S2/6TrLKPV6dz56WNU/iJnPtUK51yMKl16A="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.17_1567695057636_0.26757190270811004"},"_hasShrinkwrap":false},"3.6.18-alpha-update-deps-5135.1.1":{"name":"@crave/farmblocks-input-text","version":"3.6.18-alpha-update-deps-5135.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.5-alpha-update-deps-5135.1.1+e677e333","@crave/farmblocks-hoc-validation-messages":"^2.3.2","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"e677e333405470b9af6c652e5d4b215d826f1a52","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.18-alpha-update-deps-5135.1.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-oxoh/ZEVffLCrYemDXDyKz24Na+00ayW9yWDU1GMUvsoZgREXZEjgy+wtTRWiZ13N5+OLf8x0tm7srkCbMouDg==","shasum":"a6bb9a999ff30206e8defbaf05d76b931d5afa12","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.18-alpha-update-deps-5135.1.1.tgz","fileCount":10,"unpackedSize":72434,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddoEHCRA9TVsSAnZWagAABUUQAJIJK0QrvLtY469iUQCP\n00U+leVcpYAzSQt4PptxE/wr8b/Z4dVhh/QfKAbOh/qjdrMqf70pCm8T049u\nS4wbmazKHXdzWqT5hqknDLOkVgZdReA8SlMN76vWKZh9q+wyylIuoAF+EKsH\n+X+3ZMoE4cHQp8q0XujFunjdhxXOCcRvt/t7sWZXhFXRMhCqHIIEFevu82VC\n7jQyv//FDkj2Khu+QAAE25tgLStOcrQf8BVH5afX5zOWAW5bekXCGqmVYi2m\nxy4BO7MkAVnUsdREzAp/zC6xsdNDnPXbJ2SVm7VJW0iRLXOcNwIUqgpPTQ1D\nQjjeS1p1or40ps8sbgzUMGLMT8elNF0Bxhee2doZQc0u1lkJwWUP4tcU9B/F\ntoc4KJ2FSBUIzadTlUMA03k1c/4hd/eYQgnAh5Ot45JpqwqCD/bUjfb6s1ut\nSV3MDb1LiWEDGJjFzS6qovjz6nrixhWqcoILbjR4TE/g05SawOhPU6arVL6R\njOm+7BWdesNL95X/3jzBT1H+Zp/poGsRuvzgFL1sHqfi6sixs6cS13mfBUKq\n70VyrTJkqkoPZey062ZQCA3UMIm3q0NnJu9fpcLbQqd8NatDQ4V3WJQzxbTH\nu8VESK0vR9FGH6vlfsqTzbKu525GtjAmy8sAIXVv3iQBZrtTPCdLEL4JhR+y\nGXhR\r\n=h/Dh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEL7uqeq3jhavMBHmhpKAUtGiHltcID65PI6/9oUvA3BAiEAnwkFmSWQa4Hv85/QXhiSANYiZVTJrUMA7RI/fAbYHSs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.18-alpha-update-deps-5135.1.1_1568047366718_0.9743567458443299"},"_hasShrinkwrap":false},"3.6.18-alpha-update-deps-5137.1.1":{"name":"@crave/farmblocks-input-text","version":"3.6.18-alpha-update-deps-5137.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1-alpha-update-deps-5137.1.29+2bfd3449","@crave/farmblocks-hoc-input":"^6.0.5-alpha-update-deps-5137.1.1+2bfd3449","@crave/farmblocks-hoc-validation-messages":"^2.3.3-alpha-update-deps-5137.1.39+2bfd3449","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"2bfd34498d5ab40eb9e11a147b9288ab72f81fbb","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.18-alpha-update-deps-5137.1.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-S4J+NvD2Z5A77exy+0wKFzDelLiImRRWa9QRYW5tx5vYRqKhLWzhpqqW8tFvjg7hhqAsy1djIYeu+5S4bXDCkA==","shasum":"161ccadef3b4edb59e6ac21e6a440fbc72cc8bce","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.18-alpha-update-deps-5137.1.1.tgz","fileCount":10,"unpackedSize":72508,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddoQ6CRA9TVsSAnZWagAA18EP/iQ2PHIs42BHEjOnFkBJ\nk8KjmtR0UBda/Z53dpn/pEsGL4zTrekLPNhAlZKSQpfMdrurW/d+yKiSneeM\ndsbVR1z0NZL4YTVq3byvQ14FP773AAHOFz5CEySBDT2C5NVtCtqmiwWtNnzp\ndaizECzlCIITO9AW+ndKb20lBM0zmy0nE0WADhYTIB3+bZiqGPvz1kiCjz2M\nqL6mRGPysBA1wen/tM2gITtkitn5yvwCE2CN+Xs1Llehsw+OjWtcvbeEhDse\nHyTyPjqYDl2w1ZeRkFe4FivRIa3Dm9MPdC5rbMN2nGsoXX/rNohtD0VQnMSw\nE4i8xGN/el+aiw5zHUKrBjDLxV0B3VbgK3vEI2TD3yTTUUiaIvuYzFinp3Bd\n54pQvMULiQ7P9wiEANczuyVj+68RcjbG5surA3EFg3n7q4FodXyrhY2fPPKz\ntRdBbou44Gmy55ZIQa28nU02isRdpESUIrX22d3qompbhaD1p7Bknc/Vel5k\n5j6TsJ1rW8NFBJx4rMChik3HHKegI7VSN4QGtPchDsWf0IGFf6WXih239u1m\nXrDIOj3b2a4beaKrkPWrH3pecdvejrQ2ZmZRt30pQh0YFDiK5v1oHDlrT5o0\nRmZunAgbBVfefr8w3e7XpMCC0V+5BhMXFtzHNydWGXg6PBYa87okAXvr7R5P\nhlGY\r\n=XYj1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFhZlDerNWKjjyCnlS4ZNU/LuTNhrUBf0dNQhGtWs664AiA1tUzpRxbv0UW9S5AK3uAUASo4pkgWg61XXpAd9DYtJg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.18-alpha-update-deps-5137.1.1_1568048185856_0.7495151910782714"},"_hasShrinkwrap":false},"3.6.18":{"name":"@crave/farmblocks-input-text","version":"3.6.18","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.5","@crave/farmblocks-hoc-validation-messages":"^2.3.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"129b09e2622df8b3cb7b5270d275aad4e611867d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.18","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-2/FSiaPgPE1/EutvzF5kQi9ZmRPct37mpPOK4U2oIc72dYnZk/W4M8c9+E0Ci9kTRLP9LA43SjW999VZ1F2pyA==","shasum":"cc09c2da34b88347331c3d42bf468a655f3d05b1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.18.tgz","fileCount":10,"unpackedSize":72585,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdd/mOCRA9TVsSAnZWagAAY9QQAIwgsHK4o0JtKzA9nqiv\nshyVBvf7pCVVVZzb83S3utYA6W+uIEtHuFU9OAN580rzE0qENBiVHoDXXXKU\nxcQmKxmyMOky5SFWk0mr26hRTF3CAYS7JdRyQ+vRO3v6NfShKVHGyURmYfqA\nl0yCiKtMj2+vb9ovvBlK6SMGC/c9eKGNri1CvUriikTfwxHwD3LEjYDusDFb\naGDlfT2s+YP4GcbI355951G5nBljXG+uxyZL9CtQ1WKPJ8+/q4OpVHz8NNQ5\nlQ9QtekQ7uCfOx9RWg5X93AxIlnT/4k+gC0tmxRYqUcFopISEA//QotKJp4U\nDcHodzK+TloqF/4eXhprwWxaW45Ye4gNLt+9DinfvlSv20l929Xf6Vhx8yV3\nM8SSdYnjq5W1VaGaSB1rv9vbSuRihnXKYK9ugwQ3X7qWfQmlm2v/diPgPeEi\nePm5nBXrd3OGfjdQm9LbJG5kO9WJZIo5vRaM5vLrU+XnVx0GQESQRqGLeB7l\n4Ip/JN+RHLix56tFMPbD+CrK19BwDgne9n9cM66EBqrsRbvTRAxnzSE+fQ7G\nYAvX8Cy3K7K6ITcrbNxltLDYD69mBTzoM5wYKYGdxbiUEhqk/98oqFeF2YqQ\nz1xCsZzVEYeQpUDxw6st81gEmfJwNM0+0A0dI+IBGoTrFI6hzNAEe8iXn1o2\nWvtI\r\n=AjAG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAnDszDa1yMk1N0Tx/npo++z1QlXFRMc98/jp9naR6IhAiAC6YYdKZTlrFhSf631QQdxzJGEA0ZY/vWiPA74PI8gSw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.18_1568143757170_0.7281105748148473"},"_hasShrinkwrap":false},"3.6.18-alpha-image-use-img-5159.1.7":{"name":"@crave/farmblocks-input-text","version":"3.6.18-alpha-image-use-img-5159.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.8.6","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.0","@crave/farmblocks-hoc-input":"^6.0.5-alpha-image-use-img-5159.1.7+fa4cec42","@crave/farmblocks-hoc-validation-messages":"^2.3.3-alpha-image-use-img-5159.1.45+fa4cec42","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"fa4cec42b914552aca39a55fcc60137e83c0575b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.18-alpha-image-use-img-5159.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-0EISYWvdO5l6Kkehlbvk4FyymKvzOgXz/v32ZXoUi4AOXFgYFNo9VrVqq8y7meF+VndKRZLTXGLzY+i8kTOsFA==","shasum":"48d179cda7219cd15b3a92acbdbefd9ad2f1c37e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.18-alpha-image-use-img-5159.1.7.tgz","fileCount":10,"unpackedSize":70786,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdeWLvCRA9TVsSAnZWagAA5scQAJ/z2TmkjXRKAky4wd1n\nu5L/Sp1OERxyUkWIorkWCR9bzKdDG6cnDo42NqgLLJe8UBVc+edBjRdrI2/m\nYRCL+VuSVuHMn1+ZK8SgRxUOHCi3h4gC4bUjBMeYv6u0aIQrdZTgyAEAAkkJ\n3aBF2hGZgmSZbs89cIBnKVD1tdcxZ0R4d0LJekXkTxsXhxDK+nOd/cdd/X7d\nVpLVi82OaTQjjGSYESBw4tUoctbMN36cbRoQqTuM/Dpjg4nlE92Wbw9Ax3Q+\nGmcOU3cxUR/EbyB853Y0tsDg+V5kokXgqkBAvvqfLjCkNlmyky1DseHLLD3a\npsgMf3x1HFMdpD5jxlKVs/Y96LLKYNd8VUh2oWKDs0ElbK1p9G7nf/baZUNs\nRXgR6Gbvwe8C/dO1h9ejO/rlYDLm/X1u04RjP8z/YLBPye67XE6JQQVViFeJ\ntS932pI6LJG8XQOW2lvPp4Y7D8M0ZF4LGvaKVu4tV7okn3nrK+LSG2n91roa\nFBJbcDllqnDBsptR57OogECLf18SR/6seL+4aPk/J4WE9n7jb/WqaTX24j5n\nVkE2MLPSATn43AB1dYYGrSJ9vHff4OhZnJScAZiOU49u5lPpVtSbjmOg/+iE\nt6vbKhG0nmgdYJ40Jd1mmIkkX++zdZesA8FN8kYXtoaYSXF0R+07d7Wy9iKd\nviLa\r\n=HFic\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYHLSu4flQljnip+JlE9K9bOdUbsp10V2O5A+v+KaumAIgc2uuPy9Naxjz6RRRvHuc2uaA+6UzkYduQwDPia1Gzrg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.18-alpha-image-use-img-5159.1.7_1568236270698_0.04201536703562092"},"_hasShrinkwrap":false},"3.6.19-alpha-image-use-img-5161.1.4":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-image-use-img-5161.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-image-use-img-5161.1.4+22b08dde","@crave/farmblocks-hoc-validation-messages":"^2.3.4-alpha-image-use-img-5161.1.4+22b08dde","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"22b08dde5696fa24066fa97dd1a5a7217963a907","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-image-use-img-5161.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-WO/GUr+8FhOIzPjnbkyb3lX6OC2GCmmndh0vCeBXYP1qIYCaEPFn/rkraOmz2N6sp9S4S4rK7eZeV+ePp+KzVQ==","shasum":"fe3d14d91838eba1a1fc252e29d35fd0bf63461d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-image-use-img-5161.1.4.tgz","fileCount":10,"unpackedSize":72699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdeWQbCRA9TVsSAnZWagAAHREQAJjC+O/04CmUbUF3SyJX\nd4tcK0Won3VtHxGcyQT4E4NFYF9MB8a7UlxOdjskeDISdf1JGmTC1ylkvkoK\nngNuvG/OWfPCm45+9mq8lhLUPTHJYJ8QdEdVJ6aXIHPAluOrzpPI1SN+JjDp\n0Wg3DoFjhA8VAa7RV66SXQAuFg+RpnLXa+62FDe5U1T9p9yz+ujdQHP8XVyz\njeifWxRU5jQA6dfTxh+ClLw7MH7MY5X29nmSomxZ5J30NcKHl4k0hT/ef29v\n1v8tT3NXXL6ZSp5zyib8Dfk0EgZ9OzEiCx2F5xqDQk8KuH1ucajSi1BQkXh/\nEJTQo3/H+wIP3J90R+y/AfwVpU1bD6VpyNtGUzd14XYR0qKoaV4MyYGUm4Zw\n5S0Kv8ATn3IRPHwZBAiw+3MwIGcFqRKReagIsbMaC2OzxtPDpTLQnwcpuypm\nNS+MVzps41Ij35+dTSMCfUJQ4ihbkYy5MYCep09Q0YUTK3RCvn3lATkqcxtT\nBsf7yi61ENwPZ4jeJg9i3Zat2YtJ9v0HdlHSjXxHqmyVjgnbcc/bl/hKtkGV\njsYQTkj59Tzuh0ZRxHijrh6ziFvXQvBU6Xpo5R1eqvBP3vO0ZUFrYivvukmM\nTy0xfqK2a+qbjpDkeaDOuadoHrNZ6ywjZBtFB2LAm7SY/FsAyor9hsE8tz7d\nt4PN\r\n=16dT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOa80x74922z3aqYO3EKNTd3XpzHLyRgOZzC6Ga3rBKwIhANVOL+n+tpv8G8EjqUjePaFk8Q+ilu8rgWRkkyAINlV4"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-image-use-img-5161.1.4_1568236570361_0.26210933224234956"},"_hasShrinkwrap":false},"3.6.19-alpha-search-field-before-change-5167.1.8":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-search-field-before-change-5167.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.5","@crave/farmblocks-hoc-validation-messages":"^2.3.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"f32a6ba1594b30cb1189c07970b15a2da001ede0","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-search-field-before-change-5167.1.8","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-qUH24CQC+88b8tdD/BJnSkHBw62RylrP38XFSnqXUWGmDCH5xsTRBN9nuyWMBNsEGp3EtH0Txh6txH0qNqudmQ==","shasum":"e3656577134461ae110852a601e343bcebf5e1a3","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-search-field-before-change-5167.1.8.tgz","fileCount":10,"unpackedSize":72638,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdeo4WCRA9TVsSAnZWagAAxa8QAI1kXEDFjkKH7ER72EfQ\ncBXm9h2BrlY9wDSsGaO8sAvo/0IW16JKcxDWTlLUhnk43ppYDKl6cL+j5MRl\npmC3rFaBFYn0NUJAqFSu3dSNF8ym7IgRCA4WASeB1z9MK8OY7Y+q8p7NfuLa\nmyISvLSHhh5nhai7/6VLdhNcWkGB5FO8qkvjrfWlUvjxAuQwMqYW6n3girM+\ncgVQRhUeXddHzQSSSouTJ7UGgOpUP5935kK6hvk60mMMkxPeeHnxJ1YlD7Ih\n2PyZ4UwML4GAzDUrn0gEOkYvLLzgm52PVLGjg6GDE2/G6Vk6dyaZB3UW2p6t\n8IzMz1IWQDWO8nYcQK4zxVVjEGb4V6vd0snuX2HuVjNuAHjkhmfb5Iy7w3h3\nxic4Gdv0/r4bwq2K1iV5AM2kFNvyVtsZnMWRz0wHQrSQ9rh6KW1MhXdhIxUo\n2ht9hEIH2eW1KsFU3FhCf0O2LGqcDKZ3TKWozYD6zeeI1wkwUq1ON9x2eirI\nC4crvZVbUkXsTC+XiMy2+2VgTeQr6aECb/q7q/SdOiscwz77+7EoFjuAD79Y\nFdHKUF8xAouM4RevuMRGc+bnxN/EP5sB0YbKwQfWF9zpYabv46hHraTDXVqG\nDiMu6H/LyilxbtBJtvs9SUQFR3n3coSOtWDHKWekcoLIPi1Bn0zzYhZKPThJ\n/kqn\r\n=f7A4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMtFhHKhj6R8H2PjGoe0SHI0h+pEowmhMf9LxNtSqSQwIgSy68Clw/a8VVCtSnVOYepAsS88nwklhaOvav4FxZc7M="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-search-field-before-change-5167.1.8_1568312853692_0.6380734434610154"},"_hasShrinkwrap":false},"3.6.19-alpha-image-use-img-5173.1.4":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-image-use-img-5173.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-image-use-img-5173.1.4+a0cc5b4f","@crave/farmblocks-hoc-validation-messages":"^2.3.4-alpha-image-use-img-5173.1.4+a0cc5b4f","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"a0cc5b4fa2860d07a1add8a6597166010dcb4be9","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-image-use-img-5173.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-HnQ1u9DRcbtEqHaPEX3Cp46Oe+O6DJDc+ZJW7jJQl2ZD5/3cmWcXdsErS/f8J3jTJ5xjxLEt16/94ZhHgURO5A==","shasum":"05d901ad3e14ff1f414ee8eb4ba2f3784fcd9afb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-image-use-img-5173.1.4.tgz","fileCount":10,"unpackedSize":72699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJderVFCRA9TVsSAnZWagAAur4P/RSKkkEGBQD6EXo6ToXb\neQwYHtXOkr4p3X400k+AdXhExoxSCeuEVemdTmX+XYY9svLcwTP3jeAFKeN6\nN/L8tb+PTzhXBUbusCMimzXRtU3SChq3xjtmPkApziEHre50uS9upS/U3d5p\nofTxsekL1RJRa3k5gmsHl3UdtdF6zzZgfx7+oLwjuomtwQIlQHjNVZPhGSLI\nBCucvuGN1WLepXOIfZj892twsVdn8aXMsa8OWdXsGPnYbdIX+kKHjKtR2X9p\nsVEuHfiq1LSowj9Hr5/W9IqpS79UIZXKpO9byddV9xPNJr6DkjtDqbiVdduG\nUbwLbWCkOaYs9HD8CiLuc8Pg6/hi8bmxyFXNZAbx+uLE9NxE+KhUqgxmEXM8\nOiFOsSFTT17FL5MAIJ/L0+ZU7xIoFbyNc7ppH7602o2wyba1hes1OE4EXgv/\n3vTZIq4BE64WZqqsznsAdvyJMapNvTlgus33pclsuy99qSpVlb7vpjKjnAcH\nic26zqE5tneVXEDK0iFETxXq9Is1hcvXLLn7E3BYKaMtg8WENuX9glrx71Xl\nBq2SDyu+iFwdEK7NjdQxwTckV9CnaGUkcs8zoZHKhj1ZpvAQY3CSFMFat/5p\nTV5+im979ZQLNjfT/QiSYunPlpQOu0cuOgIl39rGuAYmmMWSPR+Qx2deVNEq\nhRvr\r\n=5iId\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1tO7L7lCxLInD6B9TilTF+RT1j+wqpL0WbxUAksYaIgIgXe63VtyPuXBvTgaTWEdsg8lYzz7qbsapqNtIshVeauI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-image-use-img-5173.1.4_1568322884800_0.3657649356035695"},"_hasShrinkwrap":false},"3.6.19-alpha-image-use-img-5177.1.5":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-image-use-img-5177.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-image-use-img-5177.1.5+765efb22","@crave/farmblocks-hoc-validation-messages":"^2.3.4-alpha-image-use-img-5177.1.5+765efb22","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"765efb22946bba3526bddde948b9e1f078070483","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-image-use-img-5177.1.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-TTkZHSY9Z+92eEYtECvGaIOAfpxoz7CD41pWzJV1CafI3WrzAKC6Y+3RpxbExdf0YESYF/IwUlGjl/qX1DDCOQ==","shasum":"4152b3514eca423be425adbce3cae7158cdabe71","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-image-use-img-5177.1.5.tgz","fileCount":10,"unpackedSize":72699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJde5OJCRA9TVsSAnZWagAAZq8P/iLucAmwzRNawTMpQDPz\nQQLj3uA95JT/tn8OXGHE1jaC8YT/pofCRWGqz3/spxRe2xJEuUDbW4V3ygxF\n3bNiDKlCffQf75300KIT3P0pVsetwZ4wCAeNHeQx38KkGYUvxxETlLD1cPwX\n0BasuvlzVs1zCfhDqwu7MEXNyKCNE76DLV1rTkrFja6YBJlArsHrBgJ8ePpp\n5qOXSlpAfX7uhiEOLLEt/9VMNt+7696Zi6pdAfL5uUaXckAmWFQ9Z/Qi9HgF\nwPEwJBj3Td6P+EEux8LYozJFN6jR9nweF1Y3JyTr1rdIzhp+3ASCWXs6qALp\nJ69fPoheyHE9Lc4SstXxrMeRyS84E7OhBQ3TqffeXYcw4dUTGIwgB/DnSNKn\nLmxdMAjQx9hBqjCPLGQqAREJSTYT9Wsj+I0dcaXvBd8JJ7WBoD/8cH39m7GL\n0A88E/MX69sTpu8RZBL3IJzYYat4EIk+AfhennoHpvKk6FYXwqz2qf9wSzZS\n2UvLWuN704KEAf4f5ao743grEJB6QpyenAIyZj2slpxi5LvqLjsIQn1vDxx3\nhlNytp3ZSbzyMviKNE4xcsa9uBsS2wpt3yRGcoVi5LxSk69ilWmivYM3KTg3\n/4RQ+Aj7W2ctc1sLb6BqmRFDswvNrtxyF8Scb+n2HkHhaRROL28q8PvtLMlm\nXUcT\r\n=rJx3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBAlW79+jfoesJhpF4hbSfgVL0nP11YqdYALEk3eDLfvAiAispWFmimUgrFemuOx/MmvVIJCZ3DxKxqEcShyamFjzg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-image-use-img-5177.1.5_1568379785189_0.7151056312868396"},"_hasShrinkwrap":false},"3.6.19-alpha-fix-tooltip-auto-position-5179.1.1":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-fix-tooltip-auto-position-5179.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-fix-tooltip-auto-position-5179.1.1+63808cf1","@crave/farmblocks-hoc-validation-messages":"^2.3.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"63808cf17c46960b00bf1e2807f5ed0410c18888","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-fix-tooltip-auto-position-5179.1.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-+dbipiJvD3SpJSWLrMnU9F/9q/iTsStje0Y5mikwjCLtFBYxxowMibK2sCstudkx/XYCxBl6LX19a6+oz0OUeg==","shasum":"94066b9725fc1649540159a12e28920eefcf5589","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-fix-tooltip-auto-position-5179.1.1.tgz","fileCount":10,"unpackedSize":72685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJde98CCRA9TVsSAnZWagAAQpoP/0eS00jh5kYVBcdsZ5Wk\ngpFwfOYUwbotewNJ6wJtoqAntW9KdDzk+0+4vq6YhAzlbuBuonH0sGIDAuAv\n5kZzxWx+lgtpJPUh4TXTCCjY/f5nF0igVsGVpt0b1R8Tvw19QqWvUy99mUQF\nffRQLnTSzOgXqMpGE2g3MqSqq5hmnsS/RYXtrT1IYivjFZeA2AkF+Jlc7EXA\nKtw6nghieHK4MbkiAQ1vBnyvV9NQgOvtCOJ6cKnu6nln4tlZ7EImXn2oJOpC\nSAdFSdmlGlWGcGOWkNUCbOQt4w1Wltwpdl5cWoW9ezsXK42yphaNUVfjJG8l\nnHu1M79ewK5ImsfHGRtRRx49fj59Uvz+Kq7r/5FAwadk1HCDnCHC3p0Mtk2m\nszkmTb3h62DueNZFipjB9XVViuIDHH4VEf3HeTowM09PZjt4mOkTxcIplGj8\nIARDD4U/1iZUhPIczkOqyMWeuIw3uDfSb41rmsX+otQof0E+7QmZecVeSrTp\ng5L11bHpw5TWYqFlh39qpGudded6er3ZmiKdCeHDekdVP6avevBv5tuLOxKB\nMFwY3sWZqfVufq1CCWd5+08tE2lqgEC2hLzCRlUQsch1sfNtm2sx9l3o26dh\nz7yw9LpoQKRCUgC3uJ2o9vCoVG+f+1o/mDoZ1mIPyBLqr4veDf5eSSWmisfJ\nGH/E\r\n=tt55\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/XiJVSBgd1VM8Tx1R9Vtc5khCp9KUxMhEgQuJYJ6DrQIhAOcBBfQrBTAeiikPyfkZ3gWXLxS93g8JP9vQk/E+8he3"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-fix-tooltip-auto-position-5179.1.1_1568399105275_0.958525718782558"},"_hasShrinkwrap":false},"3.6.19-alpha-image-use-img-5185.1.8":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-image-use-img-5185.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-image-use-img-5185.1.8+9120ed6a","@crave/farmblocks-hoc-validation-messages":"^2.3.4-alpha-image-use-img-5185.1.8+9120ed6a","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"9120ed6a9f639f1de6148c0fa3d06d98c2d2f350","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-image-use-img-5185.1.8","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-BdCHbN7O9+xgwAMS2EFe52znDybbKlYbTqRESZcbUQza5un22maIVH17qZWQETxcrdGjlUmjQr5g0Vb3ZFnljw==","shasum":"f51ae100c73092ea83385bdfc21daf70a17d2907","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-image-use-img-5185.1.8.tgz","fileCount":10,"unpackedSize":72699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJde/I2CRA9TVsSAnZWagAAkpEQAJK/Z+1NKDRqtcR2SBkq\nZ8LGlgKPebkUmIUV0rxVr3X/XZLVAcn4m2ioTZZpStYekqzE2asUabc71WZV\nZ8EJr0SivzTx1E5dPfuEBSgo5We/q1OBWKeKSg53535l6y0s/hXP+5T0/cyP\n+lsvm/aF1dWRjpz5g9i+UIYatA6f0c394+fNdfmk7rnyTEn5V95EFFlE1JlS\nQ80omJuoCF7w4MzyVgaWP/f58QP3r+Drf5dG3Q254IvfKnaRY6wvoBMR5QN2\nCv7z7ohZLmzMNRoc5eBR+CvbpRQTck03sG5dHIr6g42yb2Mf6rM8zwAn/vIe\nzujWAr83YVqOGSVEuV4c7jePRF+SBQLWxay9LWWYuEZWTPaMfd0A3PbzTlvM\nvVzkjO8ZQHxy5HKzyFurLsawZVJ3dns2BvnyHpVtQ+/yi3MfFf4q7QYmkZzJ\n5zKGRsXFpQg0ALtvAr6N3zCpP6i/VyWNk67LZzyh2s1zln5XqZ74gC/qBMaQ\nvhKZrEyEPPaEaeNPM52e7xKyxh/HQdktbDWapJz8JpYzCT+zSl0ovxh9T03y\niQ56HtXdZvOHt06q2ob0BaHpW/sA8fABGTgpxi/dCOjHbT0Ha7oF1696qUH+\nFSVxswCs3ylPVuXyuF9INY49FG0hYisEUNcq6jlXq75klowdZq7s2v3gFz0l\nt7jp\r\n=MMhr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0fq2v63q8eqSSa2IfTClb2dR3sK5uq/wUFBEImIGU9wIhALgW9JJ35GCNO9Q5AHHx+gS7GfOOjH9X+NAJYEloJPA2"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-image-use-img-5185.1.8_1568404021273_0.900812796210622"},"_hasShrinkwrap":false},"3.6.19-alpha-image-use-img-5193.1.17":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-image-use-img-5193.1.17","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-image-use-img-5193.1.17+4f1beec3","@crave/farmblocks-hoc-validation-messages":"^2.3.4-alpha-image-use-img-5193.1.17+4f1beec3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"4f1beec3f3b1f12c4d44dd3aded0713523bfe828","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-image-use-img-5193.1.17","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-scfNgEMnq3A50jQOMlPE2LN5pSb7+DsChhadBYb2V63UI0WJZ9uew3h35uVENMyLgqQNDnuHina1XGtq+Q5hnA==","shasum":"986bf625516520df7887be0de7f7fb779f786fb5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-image-use-img-5193.1.17.tgz","fileCount":10,"unpackedSize":72702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf5zECRA9TVsSAnZWagAAX8cP/j7vXuYzO4kIEEW+J6Ug\nXxyWYbhB8EQMezUf5C5pankjk3XxV1aparSy7n6bsPypEIWIqmfSZJZK7PY8\nxCyfJTlC/q/hBp+6bSWs7Ca4lxriE+f8vP20cIawpX+IVN8m3+LvbJ6odihK\nwMTSlXlhGw06tcBZBesPU2MWbGCjxVKxlbthv6GnRrj+A99bbzXhPd3lem9q\nA8i/M9CxGUZbeKvu4rL2FntmZPLr7AGyfAoUHiSOZ5rKrkN9FTi6MbtEelH9\ngEvMEHjkANidCrmRNtfeStCi2dwROX+ecG0YQmYhuA4FJzDIWZaqE4IwG6vw\nrAuFuvpYj+RwlhCCNCzZ/WcJB3h3XV9ehw8bmBewISbk/3idRAsSq4Q7u31Z\nZcfXoG9wyM50avBi5SollOJzNjNLP2EajnDEdhx712WgyKm9/M0mIlCP4aEM\nEFvrL3ycr42EIEpsy3tOdhBmjtj7b+42178kwI3Gev/wJ+Z7g87cW4pL6/LZ\nkoYkpjUKfCD4Jam67jafy7ygYO+3vAvw9cSsBuQigRK1ZSKNBf8HIINQDlp0\nPJd7WBWY3prJKlno+O8xoz2zenRwYELAkQpTktkTkiwoyBt9JOwyZs7oGaVD\noDSJYG6w6pKVRUqqwz193yQk1h6vckyV2EkWWPge8lVwxjRcstxdp7rHpuig\nU0Df\r\n=5H8/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDTwdu+tEdshoryyqO0pYVQeazdEbzTHSDgmtD0RtZYiwIgXtS73bEC80MNGafZSdcfr3xscNWXgNTrjCIp1SzXgoQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-image-use-img-5193.1.17_1568644291872_0.39759909575047714"},"_hasShrinkwrap":false},"3.6.19-alpha-search-field-before-change-5195.1.9":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-search-field-before-change-5195.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.5","@crave/farmblocks-hoc-validation-messages":"^2.3.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"5861e155144aa34930a6c27422473ff303471419","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-search-field-before-change-5195.1.9","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-eBkon/qhkJfFqZDI5+qSZ9sNysQu5bVIX2WK/ktwlBViumnsq3a8HilmXXMdkALYhog1imDBbiHQ66DD1ZMzbg==","shasum":"0d3b243a9cee02172752e40ebacce305a56b6902","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-search-field-before-change-5195.1.9.tgz","fileCount":10,"unpackedSize":72638,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf7aACRA9TVsSAnZWagAA7hgP/imHxqhi40RLEFQmbIo1\nM/RK8QTfMkx2gRip1PTssu2Fr6zyS47NCrYsR7NzeqaPnxeeJFGUUkk+j/+W\nlIqfZuKIrIS/zUCmW7FWVWXzIZSIzYOfZXy6ild70/GrmolTqEhNrPC4i22J\nX4czVtu5QjTcy6EnjYKEUYcmjOUldHmOREan5LK2pOHPsZ8Dh0koCGF6d1O3\nET7Bb8JJQJ763TLBS526uMzgTrYw66Vi2oioYxqmiT+lIsgcdawOnK28QJOg\n6Yj4pxZgQk/h3sNrJTfZT3+3AuP30pLnXtBcA7vD7fE/NCGX8xc0cl/7rz+a\nCfh1P+H9x2cft+AHY+3qtP//o7RRCOLDqZNsTKVSL6iALhifZrIstM/MbxVF\nROaEu5KVLoZKuoE0LTVaLeRhkgYonb6wS0EWPdGyapX0TujqT3dkcPZhIp7H\nXAIgnnyDV9Otb4/RVzpxm/koS/72JFXg1zeQ5OPp07+kZf0ooJxGUhyYk0Hp\n9oSzgriYAuqc79D28jyR2YhtDooUiolKIAf6mlD/nqlJF8xqf/Q0CqPdgexo\nzT7wvK/ZMsEsCIhjuD+KTWhZLHGWmbRsr11vtQEVxTLsjlGKOdPVZ/RCbgTW\nuSyEpV5z6A9BllsZTq/5dl/DA4LucwJYslxI1Uf5Mv3iopFv+KCrHyv3HwIi\nj0Be\r\n=s6pQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBsBLYyvKj+H/rS27bYC88aF3hdhFdQkvFfG9ILrSMYwAiBKrc6Z/ouK5LHw1rNLP0kZmSlYkgFIVEgH+MeEqwFZQw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-search-field-before-change-5195.1.9_1568650878942_0.9423444027501202"},"_hasShrinkwrap":false},"3.6.19-alpha-fix-tooltip-auto-position-5197.1.3":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-fix-tooltip-auto-position-5197.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-fix-tooltip-auto-position-5197.1.3+6e655a8e","@crave/farmblocks-hoc-validation-messages":"^2.3.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"6e655a8eec93140abdc5074ceb92ec54c57700ee","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-fix-tooltip-auto-position-5197.1.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-dl2sPnc0V/UU/6hprTflQlOqMjN7YYRJY4YLPimF511RHtOIEIizau0mcIGU30fvFtVJ8sK0rbvLU21cTYflvA==","shasum":"2d510745754468a1d15c92ddf67183f8c42589f9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-fix-tooltip-auto-position-5197.1.3.tgz","fileCount":10,"unpackedSize":72685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf7fcCRA9TVsSAnZWagAAQHAP/2cK3KUsansO1BQ5INsT\nakizKHJPMSmbqpIswQEt0a9uaKRzM9yT2W4vcdL+NMHYeZrDkPwJPPbHLBB6\nWhhXm7QICtKyXC4mbvjldR2w06YYK4CdRry0PbIr6mTJwCLc0bfYmGc+IzIL\nQkTLfKK6lgzWxSgJIoXrJKgB8m5Xo/RyEkOsvFDq2XazU5hmovFIiezinxbV\nfUZecQplBVDCgTtiMh76731UcVaWcXGBZHG4aGI7xNNtbAknMG5V6rqAn6Xr\nwZjGErfu/fXrtPj1l12yuM+ogy0ZdZFW8qJW7SF5b6/lpAfjP44Suk24yknR\nGr7NngiGp/8wPzqEWB1lsoajWb43lSx8BV4S9kYGWicbwsQCndX+sQEQbuKr\nJ2K0D/E6hoXGIhQVFakkZhHTwtq71AhuST1fBih3Lw2ty4FhS7YOE09tdbnz\nq9/p5QD/q7K+8WbjbOw5ViADpDAzpIvA/mDdJJhXtQePkXVlxmVrPLxfCHAr\n5W6Z3894yOt3Hy/tCHQ71u6Z6Q+9G/Ena/zV6q+63ZNfvXymfYHSWvi6K/qL\nLKlh89+tNKibYPLSYQ+ljp+Zz1F4rGVnXTSgUuBe+ASyO4wYPv1wPSeXpKMc\nREYWgh7RovkEi22VK76o6AhbrtIoALGpWhufUpJFXSsxigQJY2/qcTHui+kP\n5FEk\r\n=cMSu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEcb39KuPmzxi9Yb+XxaWngU3EeA32swCVX255gYJ825AiEAn7ij1OSwV80ztu0L9tQ2LWYh7SDjyFrJVkOY9HZb0Y4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-fix-tooltip-auto-position-5197.1.3_1568651227407_0.9517936340808988"},"_hasShrinkwrap":false},"3.6.19-alpha-image-use-img-5211.1.20":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-image-use-img-5211.1.20","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-image-use-img-5211.1.20+fdd1276f","@crave/farmblocks-hoc-validation-messages":"^2.3.4-alpha-image-use-img-5211.1.20+fdd1276f","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"fdd1276f9235075cc5efd74605c6abfeaed108ee","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-image-use-img-5211.1.20","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-hACAZfUVg3bdqTxf5hOpaDg9etysbaWG1ZjPuazfM0TMSySDzW952s3dyW/IgnhPeGo3gjtyadUaXrkakfGiJg==","shasum":"c132136d4e94f8dec784a31ab4d8784694dae93d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-image-use-img-5211.1.20.tgz","fileCount":10,"unpackedSize":72702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf9rXCRA9TVsSAnZWagAA9dAP/A5WdEDKhheru9HjXIV/\nQXAe5E9FqCJgiZzcU0ICUW/O6eIIUz4pQq/b/t1T+XyGyHsWOjvYrDLVsD75\nMevk8Pv3qpA1VTaa896tPwgI0cASc4htqKDLXcL1awD4/KDZlv9ZVbK6321q\n5fau3hMRkO45UPPxbGXohjLTvNjmnCJKKMRK437f9Q6pdrWJsBW3aWSkYgvN\nHNcXr7pc+2UO85pd5zwxglaMC8PEa20ctH/LarmATvQsFO+G8q+d/u6KSm7Y\neCLYjiFeOD2BxWpRCEZfqsY21/ZyYTli23dCCgPiX8/8Oc+DYX8Oi49GxInx\nOth4yN0tz0m56PktS5tILB13X/B1W1sXssDGbVMZIT8IjDWk/VL+xpzdhKSz\np7ykdd0+Cr77M4Wtwq0QH4UM7IrDLAEmlDBna6Ed7UYabYqeybvBYemgc5Ms\n4bscyECCyOUrjfx6hXfC4FEKix4OMJYqVrKPLD4i41iJWond82qdfsfRQWGM\n/pcrmRIascQ8JzYPcxvw7MgmaHtQQT9NzIBoaG/wBU/qzZFjOpsvQ8FoSQhj\nzuByMykJmcBDY0AnEeRKb5pWQaH3gNMnH1F9BcVUe9JujNW7aT8kbXW+XVul\nmHqAYsViWlbtFu3YpnNvnyzzXCNMKJWi86TwDNJ0WMICqjuHojmtH1HCNvGE\n+Oxm\r\n=s2Nc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCqQD0zV0Ekic2yXfIJnDb1xxAmqN4ny/JcyysLfn5cRAIgET35N0hrRh3E4CxMsPmGQzA+87ZyYfaGu+W5S5RaSS4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-image-use-img-5211.1.20_1568660182676_0.563019287947573"},"_hasShrinkwrap":false},"3.6.19-alpha-image-use-img-5213.1.7":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-image-use-img-5213.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-image-use-img-5213.1.7+dcfe131d","@crave/farmblocks-hoc-validation-messages":"^2.3.4-alpha-image-use-img-5213.1.7+dcfe131d","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"dcfe131d618a509651a111dc7cf8f4b89139925c","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-image-use-img-5213.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-o3mZDjGzH0daeAUhpBDTzNYhTgXxGzosM/4PByNIf5mwh+gm0dMMtpdBEeOB4u74iO8lmEp/T3v74QxMNRf1zA==","shasum":"d1072f819f9c81fbd3d60b2ff1d8ac82f7e22249","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-image-use-img-5213.1.7.tgz","fileCount":10,"unpackedSize":72699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf+XjCRA9TVsSAnZWagAA1nAP/RBl0XgHEXdk6chmGNX6\ndVYy9t2WHVwxj3BuezmFNG7kc4FTaSRqk8O0LIB2Rw5sLKquyzS/a9BQydh/\nXeAQY4LkbombJ4b+UYdJZIN4pjmqAqfhjPxVBt8fGlpLp4HNQCrifRVsMvsE\nsaxyacU0dQIdLOWrnil1LrCj69RYZ101Blnc69JsVQu2rcG5vZf78PkfXXqN\n7kzRutkX9W1OQ0ZRw56J7EnWZ2gOW2iXEfCetOY5Hgt+yygB8p+z/OA5/Ac9\npXZw78wYyCVQ3MAe/b5jTAeD8tjr2bE7QR6oKVP8oTMluM8lSFT4E/ffIhp8\nJ/W7TSAu9VzwTgbJtCS39P62r1RCI/wbSK0TjiWzfvXat7/pfO2j8sFKyyGF\nhKsn5THk+bg2UiZjy8ux2ISV9BQq/AiBr3je5GRWb5VNUhme6O7l5kkBTn08\n+ZXH4zOOjnCI0uGjGHAslG4MVRkaRVIeSrcvTtPuZLR94ZVfLl5U4V8eET3Z\n6PEag6aZmRjDQunxhOf6a7WH4IJCssFdz3Yjd4vL97w2pisQ2NYR458gMafN\nAkMJ5GqKsrKf9dZ4BmFtOPM5aKBpQMjx8E9+G6iVEsEiqmsvgkNWvCyIV7al\n28J3pYPmj9DVlq9LQi6gz1CIlhWZ2Vds05ZfcLo3P6NJb4WhJcZcuhyRfjJU\nJTe4\r\n=bky7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHmVxUikZJTTNJB+dPdlkd0bz8T092M6DIqO3TTNn6SLAiB9yzDGjTRNwpR4ARt/hk4WBXr67VLtAsTFXzynPgb8Dg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-image-use-img-5213.1.7_1568663011082_0.7562244459324472"},"_hasShrinkwrap":false},"3.6.19":{"name":"@crave/farmblocks-input-text","version":"3.6.19","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6","@crave/farmblocks-hoc-validation-messages":"^2.3.4","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"4b9e012d9111e113d33d6ea8feae9e1ff04dd948","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.19","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-g4/l2+zKRFStf+FrFErO//mbKgfSj4e5U8xHIa57ALRtM4F80WfT7HSHLfa7cGz2txqwEAwavi+f/wBsvZ++cw==","shasum":"5c947b8f4ff60f48bc5b0e52128717378bdcf513","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19.tgz","fileCount":10,"unpackedSize":72808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf+2cCRA9TVsSAnZWagAA2qcP/RbHSGjtcpt9XnthOn8i\nhksyGO4ju0mHQ8/FJUCgspOcGO8xUzQK7bhCnB0ciZpr3bLatvfMoIO7h2es\nRQTXX97tHp2XNMDkkNaiI5nEBb5BapoVQwW7WSdU+Ag5YqZIypzfhglq4Rmo\n9eGyqsY0Urpb5Zyl1aNp8W7bH9U73PIcuIC5c7XqY2cER7hBU7fXySc0XlNN\nLV0XT8mY7GiKOccK1cNRgCqWP3fDcGSxz64adQ7redymIwRqewK5aSwCzzn7\n7NNqn/v6E/JVQ8Jliffh+fmj6P8c4ymrYspc0wMSx008D5gIKkR33sUHcVqy\nrjLnmDkSriQlZKo+77XOzTGOFuSdG2b+HQ+wCyYG9SlpflftvT0VRoffJ2Ij\n1y8Nav8C88Fe7KK4if2xKF5NWavDZdZs+4cy0RaOOBTqt7EaUfKGSmWWOKxP\nbfq434MdfzCpRuvt6lhH6agdDroKZ6FdP9dKSpTapCxROzCZkcWKWbYFVnE9\n0JTqEKn9ZyreGDXevtFCOPVSCv35YFWi/HGbzh+EK7VWEU+QCGtR23HdltFW\nMdtOKSiNt84y9eWBMM+ro4gCMaYpVQOIjwzYAZKyokOyjB6Fg6FmjW8VnJQ/\n+GGwPIroQiOhwdRr4DryWbaJifM+yxQEQq//uf4rseUPKjxuUkrn+mmMVLct\n905P\r\n=NaJB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHx+4tu758ffp8+ZxIvxc/AbeeoMD6nC+7o3uR4GeXKgAiBbx79dNqCoCdqgfBpqNniqjjJo6Pr6OHk7HkgxCpcNXg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19_1568664987821_0.19739848345182565"},"_hasShrinkwrap":false},"3.6.20-alpha-search-field-before-change-5218.1.10":{"name":"@crave/farmblocks-input-text","version":"3.6.20-alpha-search-field-before-change-5218.1.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6","@crave/farmblocks-hoc-validation-messages":"^2.3.4","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"6edf55f34f988ec6f853e3f2a909cb071a350d5d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.20-alpha-search-field-before-change-5218.1.10","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-wfBNAmMN2LqVLFpsMnmL51lj8FvCnrnwgohZHRKEFnKj8wB1Ww3bJz8lLTnWXPIBs+rcsj8kXPjZCKDKUwuZyg==","shasum":"e59df298887f03d36c55272b2e1c68419e673303","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.20-alpha-search-field-before-change-5218.1.10.tgz","fileCount":10,"unpackedSize":72862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgSjrCRA9TVsSAnZWagAAlvUQAJaecjkOA+1ToVJG9J0K\n18BM4ZZx6bgTq3gYKEqPgZ8L//5lEKhyn7RfWKjFXNcMINJXzE5hvIA5EtqY\n4/uxsk4VguMcebLclDm9eSL5bbunTnIA0UrPtFT+YFd9MXdVVLhyqlYF3ZeF\n2muubELfxNBPsPae2urF0uWuPeU03oBAzUshf0JHMeKvrd3WmwUrYcVXv2rr\nUWg+Cm0VtU6HN1eO30rGzHnSMfO8Q7Oim2XdYR/7656njNW1ZHskamz44gth\nDErPTDZeOW7vsYbjnszZeXFEe38y030uws6Ox+3+6KSFJs185fAq1hl2rMjG\nyyDHxIFQD0qcFCBXcBFUPD7P+6SD922r9NMJO5ZDwIG9N3fxnYFZshsLV1F1\nWKigi76Uf0aGftnR53GEtH0qhkGpLkqaHsiQWkbp3jiTlDY2nhse4Yt287Ne\nfm8cK7GEdLHIWw624bD91Eh1IkAUOXMTQA1b7C5CHeY7TJYQ3bUoOxCouhmB\nC3xNWkPACeYwGXFPiLW5eBy2sCn7Lt5zKKE9L3RmjDaSGUl2qRYCfQMqdfnu\neRAKGfSftzmMWJQVDCMm83zw/lO+odMFbW5ZEX8Vb2JTy+YxwdykvCsF1D5d\ny29bzBCi+3nN0d8CSDZCHRMw18COrizKoZefbwGbTT2TGRHO6ZA0386yCWcJ\nnLLN\r\n=SGo1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFOIzj/33CrrdmOh/bt9/LoEpHpffM6sNJzXJEWhJd4VAiAFrDqvVAMhbhdj+5lYMlnRMtAe3lHtRNr6rWahXVT/eg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.20-alpha-search-field-before-change-5218.1.10_1568745706823_0.30446935197206604"},"_hasShrinkwrap":false},"3.6.20":{"name":"@crave/farmblocks-input-text","version":"3.6.20","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.7","@crave/farmblocks-hoc-validation-messages":"^2.3.4","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"4370937bf13b57dac3ba751a40dcc0b1c9bf90ed","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.20","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-x71jLBtO5wd7L+b6Jtyob1KxXaLVcT1iVFTj8skvGZb6aj+VhKMoCm5WFkaWHLRCZuYG5x+6MvwNVOtNEaNIEQ==","shasum":"26119a779a3810410cdebdcd99049495d708baae","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.20.tgz","fileCount":10,"unpackedSize":73091,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgS7hCRA9TVsSAnZWagAArz0QAJAb+Nvrm83H24vi+y7d\nr3PySzo3c2TDZbzR146oR9Ht5D41dKEBpNeey5MTYcAY+owSaryJkLJa7pGJ\n0NbWFxy2HjpBwTeOAGLpkxFFjjqecP9IANhwLMaFFIdZREJ+Ls3HevD0lqT7\nyUn+u/Jm3r4ouMbfrKgY6TBRLXd97JNk4rdpcyihyoD/QWlSU78Fdf6+/AR+\nlPm/kCzxiPTcH3wpMRes7de1MjdIzRw4GFXoInaj7hLBltPiIKM3xv6x75xz\nck7arwnLi1TSVyEQdaBTg5UMxeaEhfqzf2HDNSdCIF698GpNG9Jx5RN4yk0Z\nNvuIUFohhEBUpuT1rXLajSSoAa4rhKgLkp8oHqK3vqW/647WcaWqipPc7D/Q\npiO9HBCPUh/dFjhAFN1vSLr/0PgRX6+WITamK8C6jzXgDMgW2MevwcXCSvXM\n0rbNpVxJ3WQHeCyagPsdZuevMgaBSRIUi3ai0rgrRVsvM63+O1kFosnS1CYE\nkbdaPkpT3JS4f47mXWLpo9RxhlvQry5iNGKcIFz37yPHjf1sWiXSjkLB1MWa\neqZ2xhNed2l/GDOi+nM241uMLye20o48NdFs3CSZwovZNzPTSvmmi/eX6Mi7\n+J3ZrqC7Bxsh7ipRMqlvdP209MWapX38zVFi3vEv2PduS04kiCjk4iVC2P4B\nafk0\r\n=urgL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDM8pq/ZDgs+PEbSnKx8vujhGXnOb8jWp9Bwi63QK8dFQIgA7PWGdDpoOEzz3jYGKjSykI2/8K+aBvMsKiQPkJIqts="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.20_1568747233094_0.7775967866517064"},"_hasShrinkwrap":false},"3.6.19-alpha-fix-tooltip-auto-position-5221.1.7":{"name":"@crave/farmblocks-input-text","version":"3.6.19-alpha-fix-tooltip-auto-position-5221.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.6-alpha-fix-tooltip-auto-position-5221.1.7+931f9894","@crave/farmblocks-hoc-validation-messages":"^2.3.3","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"931f9894410be9fa281cc4b4070e5c710571e23c","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.19-alpha-fix-tooltip-auto-position-5221.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-PdtGE6Zsle3mxHWhPO+p2Tq8iVctnnPMp/fzYAQatLHgPzZlgaxiHqkwRqC91esKJy10TJLhX9zA+3N4d8x+tw==","shasum":"0456827feadbe8010bafb2feef207544dce9d900","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.19-alpha-fix-tooltip-auto-position-5221.1.7.tgz","fileCount":10,"unpackedSize":72685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgmLdCRA9TVsSAnZWagAAnZQQAJX2P6GyBKcYNf7TE85+\nlZN4IK/9a6M06MBL/t17omHuf3tksHoGnY7VLplBGwCIBAUpGvxyqRVWLoIl\n9yarPYHRR03FoQ74IBhHXgKrdh/JKJ48n144DW2LAlXQbUQ/SWjOxPPhuYtr\n/1tluFdvr5lHZWKjty+Izw7LxYbFDYgx2C/Q9cPs8OPc7FYNPZ0Jp10zAgsU\nUS1hgmEmsN8A+psBnRkLIKHIR84G9ydiJGU0vvYmaUU012ma88zfYAy0J4Hb\ni7MFtnW7n0y1mYiXrqZDI9BPXqkpwcxM7rg1aFlbnINzJgsj4WD2HY9FNezb\nPUSZHPDC3nSrYXylboeUf4Bm/dPtVpnW9+JxfM/jclCwrbtDK432lkoYCzEr\n35rFFZol/HfSNHhREY3pOs8oH7jha7IPtdnxxHR4Vmpiz7tZQTvnIbXlSMOV\nR+LOdSCEUYFlQ5e+l2mDx5PUHSKTkE5eSmz/qhHxN5Nj/AE1VziGRRRWG3lk\nt4Ek3FdI25qFeKWiFwpYece6Imza+SosrA5+3NyaTDwTcq26vslbRQWQEpaT\nTmrYme22VOEwgP+DGmSFU4/FZaupNc9PASRvZcUAdJQcYrA+mRdghdDl3Raf\n3UK7+gSSjrMs4WTPoBpTt7pCVuyYMMoeZwoBGVNebvgSu2lFRdqumoDizfrK\nX7x7\r\n=JrbB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8WwMIkIE9NSpPB4wBQZc3V2TArOxi3+5rmXXmEmioAQIhAMdQCE3BaxkToC5w1w+Jn+TAdXTmVEPJ/hF/+KkuPpYK"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.19-alpha-fix-tooltip-auto-position-5221.1.7_1568826076737_0.7505612470705756"},"_hasShrinkwrap":false},"3.6.21":{"name":"@crave/farmblocks-input-text","version":"3.6.21","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.8","@crave/farmblocks-hoc-validation-messages":"^2.3.4","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"b1fe3a0283a30a9373d093701ec755bcb2ec1f32","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.21","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-niRSZwmcOj6hFWOXxNzeZqJjjZ9nf0vp28YqbkqxUDQHriykvveu4kkVs7VibKQ7WPxJddSNtt6ZG7p0DPviVA==","shasum":"a83453b059743df3140c15761ad770210c5a52a7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.21.tgz","fileCount":10,"unpackedSize":73314,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgpN5CRA9TVsSAnZWagAA2PcP/09BpKgBcikh3bDFHeuB\nDjiLNwaOjcJt2IUSt54/gD9yLr4f+cWCurMtck/qGOYKH84CcDYh2MP+0zfq\nWIBF9sJt+i1R/B7rQVNFJsQRTbk1dVD1LYYBT4PJzho+h1pXLhc7q0hROdGD\nnRyUwlqMFmmCBqU0YJXiPJlj0N8LT0iwcHoq6dxZCSxZdLz3lHk4m30q72Z9\ndVPYdZ7q5AzbqtEGA2iGq4yDS/+tVOZBOL+2jcv/VJpNyJHJVJhg3SG3hrGC\nnpBt/oWE+k8oWWYgTnpToSiuwFQ/LMG5Rhj6KNdLHJg6cVghSud3xlMEsHzf\nmmlQSYw67osnuBVv8qTHIPUA2zbKoRKCAPnw4E0FIC/KIyjUzBhewOL3Y/J6\nakajBGGAbsv9gDBxsRlKzWzOhYtcYdTU8v8ZG6zCUGmgrsxnxgrhhfpegIyR\nVRA7ZUVnrg5IT1bVf8nvu8+mEDKDPoqIqyoXZ42IyCXfNxhsyBl9ytSiqJF2\nl/e7U4FForiQTcFlzImyi0QdGgp7qQVuM15axSCPrTJX6KQWMy3+/Z6gH5BA\nOhjI9Qu+brxHBVsNuWZ2za/5Pt++JQAGxqrJdHpm4R7sVAKupuCcpmo/rtOU\nHA58Vt7eA4JT00xRV//t2b7tAz9hIoESF9HoAZm+1fC6hNsRbct0R5xWJjPY\nBTUO\r\n=OzZc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGAxZjE4zI4wQFnVfZLdmyVwQSOBN6s6B7RKVwtvCbbwIgCt6uTUlD8WNQa0N/fEsDzbJtnrCUXPKWP80xR8kMacM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.21_1568838520944_0.29480399710414384"},"_hasShrinkwrap":false},"3.6.22-alpha-fix-image-overflow-5243.1.8":{"name":"@crave/farmblocks-input-text","version":"3.6.22-alpha-fix-image-overflow-5243.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.9-alpha-fix-image-overflow-5243.1.8+ed25da34","@crave/farmblocks-hoc-validation-messages":"^2.3.5-alpha-fix-image-overflow-5243.1.14+ed25da34","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"ed25da349f0361eead7dc02289b196bd1914b37b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.22-alpha-fix-image-overflow-5243.1.8","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-2zKjAY8NJw4r03RZ/tWoma1I6/EJ3O5ZnXYQpnvteycD+NSMIoh8Jqe7GBF1e8O70Moi40DBYNCEfd5zrns8Uw==","shasum":"3cef1a314790cea42fac7df45f90d8f78638945a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.22-alpha-fix-image-overflow-5243.1.8.tgz","fileCount":10,"unpackedSize":73444,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdk5hUCRA9TVsSAnZWagAAtDcP/316R6Rw7XbC0AP6De9K\nA8B6NRq3q92YMxjySPCCDBDtaY9GGjP9nmP5RD4b6Bc1e/hFG/FRyupigLlJ\nWWZ+uzXIXGteOuQkkoOZe1BlXkXUuUXrkAcZKcg8Ao11Hzej+XqtH/f6J0uQ\nyuUEh5QjLoAQNQHZdHh/y9t+rRsip2w1h9YDOKawume64EexrBIVH7nQFm+Y\nS3qeWtWzYQJq2fo/RGGQdo9wdwUBkCV1xX2nUYknrwOb8nEizD5blWIIAxFd\nlnKriVYPDv3rMJCal5Rjrt8sskyehZ1iQ6BnJncoLhVKfj72ZojDVZZqlJxx\nDV61OmOVELNtleiaTCmsWCIKOm1wm1mJUJvcgOAc+Ynf6QcKXKWtm8VOQeNa\nYYoZtDwaBTHc0whJS1rWFDbgd5SF9C5d4hmK5GQG9d4o6kIHT9bIrXsOHEK0\nPqOf85SxCVpGQ99XFUJ2QBZzUJylWA6Wue19LwBC4dDdZOX2yFOR48N9bmIS\n0vI+ZHepZmKWa6mXINheRMbWaeEcplehhKltOt0/8x6eVnAEfrAT2XR7+hzq\n0dS5vwloC7pdLNgrVwTYA1M6qQAnFpcat5KmWnLHf5y7HscGIw37fMUIQVwI\nYGNlszleHgpn4S7TbXijEHaYKyZ4p4z03VG5/DtxgP8+8Dw9JcUV1HZoNujH\n8Z4X\r\n=fXLM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDy7e4iWFPBtm++AAKM4pm+7AcHuMkXdJQPEOArVMaDwgIgC4V8iuPgv0lKPgKKuZgk4shP52WeDTWTsJnN0GlVowg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.22-alpha-fix-image-overflow-5243.1.8_1569953875373_0.2741034983321413"},"_hasShrinkwrap":false},"3.6.22":{"name":"@crave/farmblocks-input-text","version":"3.6.22","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.9","@crave/farmblocks-hoc-validation-messages":"^2.3.5","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"0927d4676f8a9107294b906d32af1b898c123839","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.22","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-VYj87v+MafYLt1XQYNAplFex8zX9NrKz/mw6fH5e+jC9DG943ANogmM+MRy35wYbz7QgH1TLBtVgoj2O9ufLmA==","shasum":"19ab7c55ace32655a638df990fff02e1f494a826","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.22.tgz","fileCount":10,"unpackedSize":73537,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdk5x9CRA9TVsSAnZWagAAtdcP/jM5kiUPzItXuA42sFHR\nemgRh5GA0NoWK5ttN3p5sU5H9H0zXKDUkc5P056418gGGq+G28fUBDLiZTFo\n8ZiWTh3n0CpcX0XkFqtg5R2bl4VykLZumpeIsw3b3zJTflTsM6wqYWqp+QNM\nSIkD2U1ZmMTDXOWGcm271fYXQ5uFKWDodDaJehWHn8gTYBbiaxi7Bkvh/8Ij\nbPNbffV/zctLB5mPQKNbyM7t2fgXefnx6+QdTnGum/fJENQ0iW5nSxRCYAML\n6FyesJKLwwr5FP4ADOqj0+LyqHW3pWv2ZUF6mPMMEWJ6ahRbJbppPC0csnpN\ng48HzEh8iyAD40Jw1xBovt5hCrroUG+nIRARQgXLJs2f1GkHn6mxb7mOHG9/\nuSuFSuT3FnhkDAJHsH37Q9IKiGCUQS/SS0JXJ7CKUfsPS2wx4+52eA/RJobF\nB2TpPJYosoC/HL6OWatVgIpaaxbPc2tiOsgMN7tNS/YWSjI196dvcCDNdUBC\nxjIbbmYfR1PgnMdPWNf9yjYD9k3qJ4xc+PmmZx1GrpfKG23eMdFshJu1obUj\niF2y1warCYi9MIVho65umP3iIMaZ44ALqcA9hg3PLkRBl7e+gN7IspHKlpHm\nEfPorcoJkQgQfKRLRQ/dN9fO42wYN+MatC1+VuAh7U2VvLOEJk6bg2WpU4Am\nSftQ\r\n=VuE8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDylGZEB0r0Co+cdN4nO4UQUglEQOAGd4LlT7BZPOuQbAIhAJpORt1rF9KkQuZ6qN54J8rk8Qs7eHS708R/dxwmgYE9"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.22_1569954940568_0.5007976666605041"},"_hasShrinkwrap":false},"3.6.23-alpha-input-phone-5286.1.19":{"name":"@crave/farmblocks-input-text","version":"3.6.23-alpha-input-phone-5286.1.19","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.10-alpha-input-phone-5286.1.19+f7e3bdbc","@crave/farmblocks-hoc-validation-messages":"^2.3.5","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"f7e3bdbc843e978da836e66dad8a7a6a04fe1555","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.23-alpha-input-phone-5286.1.19","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-uE/+V8JOBwho7/UHVVoaoegZEvF8vJuVYj47W3k5c/x4nkqwfzGJzBVOw41h/byL0ngTxCSay7AF4kTuZrwZwQ==","shasum":"9aefc217972a4f1e4f895db617c7cd498bd8c80a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.23-alpha-input-phone-5286.1.19.tgz","fileCount":10,"unpackedSize":73612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnLYGCRA9TVsSAnZWagAA6G8P/2HPL/LlF5qRfnJPJ6wE\nJuTVWzoVmKoDb4bpJIE2UBdkRaLADXN7ZNiBeIz7B8WF9+dhzUBO27reIQLL\n0moaaCHkNKLVlCEiDrHoNchbFiLFxaXFPVCFX9H30UKa/WzLiLVvA8fr/1N0\nRTOBA1LTGtkctlC3LSypJ8TeLhO4CoLcVTtr7Ah22jgZ2XNAY19Toc/jsj7+\nwabcBf2l+LtcMEzN4HsyppyWndOjS6xaPoCHC4aNJHtp61LccRaJhHK1DBxt\ncl8J8LS/LCyUSJzqicxTyCDicS6+RmpeYXTF2hujTPpLDxsbCYOHFcgZEdTE\n3grafbdTmRg9I2bX96P3LgYnesmfJ1aZLbjMe0OxfVhI23rApYAIiEQSj2jh\naiqGMn3g0soHTfP+RtYJ16Fmy4Pp1OgLJt3AysGbPNBwFKLUySs27s8n58o3\nmifoFhi4JuGbsGZWGnUrv5y6LyR+4kuUKs3WgqN/nmlbWKFr9mTMvwWI9bmC\n4LTIr3HSyHNqpKltUGglWxMDGUKsBO/7gy1iKdRf2Inkgac6CTF4U2XsB10s\ntNclk+qOn5ejxKppvHLfWRMEAIugNFLLfliQosBiF0ViP+mT+ejMc/+R50dB\nlpKoRdoYZV1mcnnxTMufZ88cp32zGY0sVdp9gU2jNvF1PX1TIwPFKMF2gD7a\nFVIB\r\n=JiEO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiKoKf8Zu+3CELQKDMQ0+C5Djmi6sBgyrTn3I68fx1fgIhAM58GcNCvHFpivIvd+yWlXspzetMxe/8VnRiWON0LL3m"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.23-alpha-input-phone-5286.1.19_1570551301320_0.8518714286096696"},"_hasShrinkwrap":false},"3.6.23-alpha-fix-image-proptype-5327.1.12":{"name":"@crave/farmblocks-input-text","version":"3.6.23-alpha-fix-image-proptype-5327.1.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.10-alpha-fix-image-proptype-5327.1.12+4f04a7a7","@crave/farmblocks-hoc-validation-messages":"^2.3.6-alpha-fix-image-proptype-5327.1.12+4f04a7a7","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"4f04a7a7fd6f6a0f1537b0a3f319008983fffcac","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.23-alpha-fix-image-proptype-5327.1.12","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-3xHn2nYb4LiWw5ZAJDdA10dRTAMrSmMpgMezuZaPuHdXGB0TwLwXrLDm5+uDYWZzeEHqribiVxeO/6RtetxJMg==","shasum":"3cae7cca81cf1b49fa53d53731674e12f091020c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.23-alpha-fix-image-proptype-5327.1.12.tgz","fileCount":10,"unpackedSize":73670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpH9OCRA9TVsSAnZWagAA5o4P/RrR/ERmOBcPpzSDrads\nR2txK4EL78GOimZ+ez74rhheGsuW1zemU2JpfnTpgn9sjEzS9kCyrnZcr5tr\n+cxCQMGA71yhCl1jaTSUF8NUAbOjEMmPH+nKdyALA7d9mvdLDupb0ctunP14\noT1zL7uTJFiT1Vo/UnMgcvaRrubKRDx7+4E68PWQOaQKL1JoKZd9O4+bABdJ\ncxwLpKg0RV4g1Vs8i6UpMxdwXP2ajTibgWzPnOh4G9SkiEZIg8j+kO1nx1lm\nCi2/eaJyv1k86d5maG4VbkzR/AgyKsoyvXhE5k/5eHzwb50XGafawbGGBzQE\np+5j/GsNNmgYPcrgclnwuygnXgo/eHLYJ/vE5t6hb+lt4Hb0JahjreDxqpJ3\nQ7oe3agotkuOujE5aZPMC0NJGXZVefmy+K23+ZonwsGcWYzXoPkUzQrzpRpx\nS6xGNoTvcCQ6pHj+2zVzdCA2O9LYMj9Pfl+s5MA03faeB5gItjuDsPObbmX0\neWGcIdvOB3CJO1Tyg+tG9pZ1w5NkmPfhlcP6vyS4AnoyPRLVQIENHrB6Y60X\nLaHTub81JTfZ6+ns9VT3yeu3FtEtWlu2m5eaosB32Nc8eXA4ybWtc/mbEyTa\nzQ03Z3LBTbWGEdqeFaJvtL823wliiLQYyFJcaHqw6hioJdNg2zDFEDUNFy1y\n7qI5\r\n=QpDw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFBSPndKY3Ra1n2nvpKq5YY59/3vPgLcEmWF28+PqWSIAiEAzLUKVapOeqJcAkNIsOEpqVxk3Xr2e+X/uzBq6Q75sx4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.23-alpha-fix-image-proptype-5327.1.12_1571061581504_0.02065086487181489"},"_hasShrinkwrap":false},"3.6.23-alpha-input-phone-5347.1.32":{"name":"@crave/farmblocks-input-text","version":"3.6.23-alpha-input-phone-5347.1.32","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.10-alpha-input-phone-5347.1.32+2f36a555","@crave/farmblocks-hoc-validation-messages":"^2.3.5","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"2f36a555ab3cf71509d609dfaad7c75512a78b68","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.23-alpha-input-phone-5347.1.32","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-1vtHwQxxKPAPwyIAnVPuFTCQ4PrI6S7abuYT+osF292q6KH2N/whA22zJv3dt+VvKz2xCajpV1XGbimh18fjzA==","shasum":"2268123655c2e2e01715a8eb40229723f7b3e9df","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.23-alpha-input-phone-5347.1.32.tgz","fileCount":10,"unpackedSize":73612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpiNwCRA9TVsSAnZWagAAcooP/Rl9IooCFRpC7bbcUI2f\nmUlYG2fJrKE1gGwEb6gWiLLNT0xFjGPr3Z5Exd2trZsvrQntQ9DCixLrAT6+\nMBSIRPIDF87WKxIdLyXaYElbmv/9BX34RQ1B1nYc8rUnTs0BS7US5xF9GSpH\nBaFozn8HYJdp04Sm+G1fhcunii4QVRFTojxlBHrEiZcEYL0uSccRw1SY9KHu\nj9pmHLyvYWP72jefuZ2XWt9Q9Q6CkZrQMPCVqNdC/PSI6HQVFBebcm5ckDqJ\nPIhfcXWUQQi3MJ5u/uTMZJAdOtvB5fIPhH2Q4scvFo4hrSmf5HE9lBYhK8Yt\nZnNf/HsB6ylC57DDOP9zCx2GDEbVQE39W7wHIWQIeJEcV3E2F+ik8++C/R7E\nZH7Kk/vaijCTPxP7BSysgCl2VJ0qyf9k97QGEUXwIY25lw/NPELhY2GP7c8x\ncAnu5mDRD2kqtIdPvou1CG8DEP6f/fcVDSxduhq0bv/YWT1JXN8baMzlUCeg\nvwYWSMsabvmzxyY9cdIx3JfAsb2Zw0kkRdsInlJ0176Nxp1NkVzv7DkzORK9\nKdryojNXvTY8vaOllLr71V1XWF2pzjEaQFr3BZ5iXTI6MG/lIUWN065RVN6H\nLrkVVAiR8msJckX+VcyTcOHfeAqVFOisdyJpeHdj6vJ9n1MiJY8iWGO4IDEu\niYvp\r\n=Ltpi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsoOqw9BptmhTbjLF8jFGLAok88v3apxEafgXwFMVFNwIhAKj9QaiPXflbw1AXJEzyvZKUAVNDDIQwkzRlsCgfrNN3"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.23-alpha-input-phone-5347.1.32_1571169136052_0.8108638557893353"},"_hasShrinkwrap":false},"3.6.23-alpha-input-phone-5351.1.35":{"name":"@crave/farmblocks-input-text","version":"3.6.23-alpha-input-phone-5351.1.35","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.10-alpha-input-phone-5351.1.35+f7c57fcf","@crave/farmblocks-hoc-validation-messages":"^2.3.5","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"f7c57fcf83ac3c855943ca8a59fd7110efd7b4ea","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.23-alpha-input-phone-5351.1.35","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-gjBBjj3cHK3XbnDa9tsCwEhlnKO1D/7GWd2gY4+JMcL5P8WIzcppC/rfsQBV7u95dF2WH6ZwDDCDyF8jkqHJ/A==","shasum":"29798974233df37552ebaf47d132280612250716","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.23-alpha-input-phone-5351.1.35.tgz","fileCount":10,"unpackedSize":73612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpwKgCRA9TVsSAnZWagAArsEP/3gw27/bLfRmzW6mmp9b\nX+b+tIPm2S845UydQTWlR5bQjtUyk0O6tJ1UnIfkvq1YmnXyXq/BRA7LLWRU\nZwyWG04rAuKPiq7KKZ/OWmqRmfdU4f2b3FMpYyspu9OufkvZlFWY+Iu1dI3v\nCX/fRloUyK4UYWqWiijYShNZjOwttGmtA9P+xy79pzn2FF46j5hv8s5Vj+ZS\nhm0srRWE+wU7v/Unbt+Q0cbk7mKOyS1tgVhF5K8YooIuAKtSkiMTgpf1UwRx\nWaXB0JzESi63U7IaLQllkTWCBV5xM4ho8+lLAXjosE0Zjjn+FLJwcDbAcjQq\nKPjyvl0F6UlsaA58Cgg0K6w2fA2XcA1/YsvwyWIUXJsI1USRmvAg3fRKYQeh\nALUWC6/I9JZ2GmnOfPaLROEZNK7HUlQRHQbfgSy3+k9xy6tMy5ald/+xgWkD\njkndnqQc0nyH1krEKyuGjbCW37EBh+CFYpkc4KV01iX5xB0wer/LWo+eAkB3\ndc+HclcCvczdvtawgmciz6KDhPezkXK3rx/8Asx16rB4JLkUAv5YOKJpD318\nWI3J0mFkZS8eEfWu+GELwlsgJr70AJi5J4Z2kbGTbLbZWB8QpQZ1ocKPF+RM\nyNpR35f0yhJkhUGD7aX+aoR7ShHdZHJkM1wPpLcSpNLwidDgMSr5rNFCqfGD\nRJuu\r\n=QhyU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHKKekww5BXSJoboPWvtqDxuv51ZJlYf5jhuZKJ+I9XXAiEAzNQrx58ldXiojyvZt4zutOk9OMndcxcKD8pESxDbXgI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.23-alpha-input-phone-5351.1.35_1571226271515_0.23156843511436165"},"_hasShrinkwrap":false},"3.6.23-alpha-fix-image-proptype-5356.1.12":{"name":"@crave/farmblocks-input-text","version":"3.6.23-alpha-fix-image-proptype-5356.1.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.10-alpha-fix-image-proptype-5356.1.12+95b873bd","@crave/farmblocks-hoc-validation-messages":"^2.3.6-alpha-fix-image-proptype-5356.1.12+95b873bd","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"95b873bd9f223fbc473075ea0945416fbfd3577a","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.23-alpha-fix-image-proptype-5356.1.12","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-f8jbr2gdNdfYfSV7DNr6rU/uH213d1cAyOpnBlgJXWZgADk7oojY39JeCm0P0koJOxeUbRuGmHi+fcHxGixfJQ==","shasum":"3613edb666006fafcb3685291e1e85c473cc9ec7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.23-alpha-fix-image-proptype-5356.1.12.tgz","fileCount":10,"unpackedSize":73670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpw9wCRA9TVsSAnZWagAA4ZsP/3ROg0/+XHEzMLNcAUG3\nQNvLk1aFqtInwEULyvwkwHETWVD2sBXTMBWLU4/HjVxwhMAqokmhaPLkikM4\nw9l/8QMO7yBD9Olx7zmTf1Y1uNix7t/j+/7h+dy/sokZRpIe+2Q0DrA1dvox\njxMlC3hkTR9dfGS7OCFl8AENq4RauuMa3ZgMWilpKdyvk5V2FfV+Gvom/HMr\neXxC0SjYMxx8Jr13lp0RwWiv7JkNS4KDK9FlDUp847E1j3/yqeMVb9K+qy3/\nUIgqnNUAyIKmSaMz/ijF9+lwZoIcHtkogZ8wIPHTADooCDy8wygtr3wEJVsZ\nNagBuWpqKrUoOO6Z2cPjjCWbScXHBb1RO1pO5puqnxcFk+TE+bYrigQLAN3n\nTuEO5DzG7n6iRy6gUaBwvexEuaylDokvRqx3MiFCXzypg7I5lWbkyut37Yew\nTNdYM/LWIM3OwVG2CLy91a4Vcw9FmlJCQw4taxFH4JMlengMEBSfkjRW3g9f\nMtSIyzxtS4Ys/SsZPvNWxPHgKXs70GbHn1s3D2nwmkaaWKfLPOsRzkiJzwfj\nB3yNb484DYAk8PH/DmZw6z+36ThrnMyCqt5eqwHb1whzu2wWln6ZhqsH8/7h\nfnqS+mFgyerdQTZ0V3dq6z/5pAKWINw/QeeKPFFO8dguVJA4qWtHVJTYkhTj\niT56\r\n=Hbkh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDrdz8FpONh7MLyLMoukmQfBqqiN70Fh6yn0GFtHenZ2wIgRpxhCCsmavleBrKuNeDn1X7YsXjpYDqoyaORFxti9XY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.23-alpha-fix-image-proptype-5356.1.12_1571229552051_0.23317070430554865"},"_hasShrinkwrap":false},"3.6.23-alpha-input-phone-5384.1.46":{"name":"@crave/farmblocks-input-text","version":"3.6.23-alpha-input-phone-5384.1.46","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.10-alpha-input-phone-5384.1.46+51f87e94","@crave/farmblocks-hoc-validation-messages":"^2.3.5","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"51f87e945fd4674699a0fe6f88375868654b2d18","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.23-alpha-input-phone-5384.1.46","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-zas4F2QVDCgkrNBqutqmX83e5yguk5ecslcRFc+ailApB0bmyGlbu7TRMf7MOV13kGFQBgHK2g03ecrjI6jVDg==","shasum":"97130ecc9f942ba90217ee41480389020801018e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.23-alpha-input-phone-5384.1.46.tgz","fileCount":10,"unpackedSize":73612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdqf4aCRA9TVsSAnZWagAACmMP/1LI4UqKFIrtV5+poRgy\n4iuKJVphaR7dTcfGyjiX5nBPepKlY1sSbGMXcBLjwFPO8ZSqINPm1748NaUd\n3rmibXWb7pCPv78Y4FKvvWROKA1GYOwi67GJWq4tdqtNaVWSNO6LLfbIf09T\nxRJNJJc/ILQ2YZedk1EjrzUy69Tk38PNPjIC2+xo6OCd6XObcPAGIL51OzSw\n7SWFEsDUNvTU2itLLNYt6P5OHHR7MJyYzSR0UO1gdnlQDGoOYn63rsR8Nel4\nOI52Lg+mK9fBHanjyDFy9zNyyHwLGWQKJa9z8f7DNGSbsGo7DldpWzCnDuWe\nwb9Bm7RuT6Bmanzvs1+J3H2po5zTHWz+DVRQbDE0T1n91+0FvhrdQp4NLGBo\nKl3uBihLzpQpyV6wAf7nep9af9vrrOVVdkhF6ZEOUcFB4akI5v5h3bIYvzTO\nPBCUQWDBkxwujM9pK+c2Ad3fXkTaSG01KFlFuCyNK5TB9PSwB6/nkFUy2z0m\n571sPfo1fu4fQ0XED7cB1fWThZryq5Amd8bhR4XBk7eP+hxQioqYp7L6B2UP\nHVUgwnfOx/ZhU+su3pLLrJZ4cyx63PC8e6wqXNEhqtrgmervWd0/N14FgEws\ni0HdTlIC3lSr9uBn3IeLM9CFWnnc8bdCG1jXX/N5+wY3vlrnhoW3+++nNFoy\n8XN1\r\n=9jtl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID0GY7+Ayts4owXJorFed/2Mjecf3C4UqXULn8EMMAM7AiBv+bGilZaqoui+t7499cwcLswpLv/NenSpwNDofMStIQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.23-alpha-input-phone-5384.1.46_1571421721494_0.7202441030309978"},"_hasShrinkwrap":false},"3.6.23-alpha-fix-image-proptype-5388.1.14":{"name":"@crave/farmblocks-input-text","version":"3.6.23-alpha-fix-image-proptype-5388.1.14","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.10-alpha-fix-image-proptype-5388.1.14+81ca6e65","@crave/farmblocks-hoc-validation-messages":"^2.3.6-alpha-fix-image-proptype-5388.1.14+81ca6e65","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"81ca6e65aaeaedb130e2a07110ea8f0f5069b43c","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.23-alpha-fix-image-proptype-5388.1.14","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-XwJKq/T3aeIjgH5ucTBqBunxFJpJ0rKE7J2iyXID+nXw1B5+6q+uUUxVpN/00nwJM7trT4JAwVmHR/4a67DRYA==","shasum":"a4b742359853dfe06a4b985a253e6eda65131fea","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.23-alpha-fix-image-proptype-5388.1.14.tgz","fileCount":10,"unpackedSize":73670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdqf7GCRA9TVsSAnZWagAAVl0P/2BUYbsPLjt8xw9P6FSr\nGBDgfupEyilHAz3Uso81xRL23hsCOgRfjgTkbTqOe2BNGQTnsJTT0D9Fqz47\nCS8RW144i+f8h0NGXuQc1T8wBawvEAvvnwnobdto7fS14d6IInRAxzbVkWCO\nmo4l/1rjR+bNvTCe5ydE9CMpRmTEbu1XTBdIqOBc2vhAPPs1SCx6Ku3VwVQK\nPiUSrsp2bHkvw0wcAOfIEb0d1xb0vuRC7GBRHJdd4qlyKwqQDqxe1gSG77f4\ncVzWaIza/9fold+ErVo98yqwV5xUt2PK91jmJz3JaUTVf+mvk9Lzhc/wy0g+\nL1eqNz2b9eAf7s2oNZA5s41rlijMpVBbs5+PJnqEoZS5vnYI6r8RYGS56kHZ\nffscGOoHEdAJoVZ12ZbO+F1GzofwnWIKPJXtlswxXXAGoDNNE8QpGvaJhqnH\nYUSWuHd3PskcUR+x6yemjLH3NhynXUM8Pc4jH5NERsryHA1rz5rIQKe4xVTD\nOYoSyh77mShKvJFNJYmhPvzpavPgDMs6IMrGgXBO0ItFCCXFsIw4zwUCqMo3\nUBjoqS0h/vURaOi7eVOUMLQkYSt2zgIhEbGiplhWs2+Abm7tG37ng7DtzuNg\nwDMxFgrymnH1LwOJoIX0c1xC19RqEN0oFuRDq8FsJ4ZsIFXPR8cUmVL82FKy\nR4/6\r\n=mkBF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICQttI406YWkgxHN6xcl+WrYkdWaWJ7DutioNZGxiVzvAiB9zEIYtzBspF6llkUtEF4tmBEgJqB5OzBRkGjNCz9NZA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.23-alpha-fix-image-proptype-5388.1.14_1571421894133_0.89663973400341"},"_hasShrinkwrap":false},"3.6.23":{"name":"@crave/farmblocks-input-text","version":"3.6.23","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.10","@crave/farmblocks-hoc-validation-messages":"^2.3.6","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"191bf757fa58ea9d9a420b2a510463642aab0b04","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.23","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-qOB3mcHZnUXmoNkLYSR5JUrviwDNpEi+UNRKUWUSNy3QnyhGN88ByLjlVmidPTIw/YGZhP3NQ2QUuKkiVyDlVg==","shasum":"5158ec73b692137e23e8cdee3b48e716c6f8c80a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.23.tgz","fileCount":10,"unpackedSize":73761,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdqhekCRA9TVsSAnZWagAAGZgQAJDFUo6SxDg4PHYTPPp6\nuooYwjlZYQZcG0A0riEA9QJZ66dJyw7krv4YJFppnNJ4X0NwPBtIg8U9rWn5\nOLjpgeDyufNNBrEWRvUiajgRLrNbt9OrjQpQfUy2TT7D4asCJ4TIBdyV6qYm\n+Z7ftFDOHXSEaBjn1mRDD2QetkOdtVo3as1YkGGHabnij4l1EyGQ89k1qTWT\ngq0jN1tjhMUv1m/mIBLWuSiEYtCVIskdgnmt51uUI+0QI1Wgma0g3KU2gr75\nuH7TUy+awuxphkRIZ1wotCeR0uF3iDd8iXmCsMeUPsD8RxFW8V0Ruoc+SxK8\nPBd+VqCmFABQZPX3DN3OkAC1HdkrYqMb0D5RPF2eZfZQ7rFWSopyT7UPXVx8\nqVjjcPGBR6Titl7wNi4pwxcX9CQ3E4fOVMK1yGKo7UePRp8jpqUHNLcr7Pex\n8eRPZpNmZaVZcN9uBvvzd0vwVGFOO03wmkNDbFUpU6GmQmZjjDMmb1NIvIaW\nNEQL0wgBDl1dbjv1M1NjRK4qz8cF4I8gyCsQDlTZSUcIYU75Ux6JbVIl2nOO\njOXqiBc5L2U0Ny0N+Q/fEyeG4UNYux0Eo/PWBfPR59PHlFkIGA5RmR3Pl2XN\nZQxO2/Jr+hy7s0UchWxvI4yGKNNrX0/VImeF+effhAffNR74eDKUblnHkl52\n0tWA\r\n=bGaf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAKXzSY5BkSRkvUQE8VOxVbUv9ufE6rhRyMM2aSF28j2AiBDhWqTJoBqRkumSB8voc+n72XThGUgbXykgbOKI55OgA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.23_1571428258962_0.5133329055953275"},"_hasShrinkwrap":false},"3.6.24-alpha-input-phone-5418.1.33":{"name":"@crave/farmblocks-input-text","version":"3.6.24-alpha-input-phone-5418.1.33","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.0.11-alpha-input-phone-5418.1.33+766fbaaa","@crave/farmblocks-hoc-validation-messages":"^2.3.6","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"766fbaaa552f50a2dcaa78cc7f3889a544e40ed1","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.24-alpha-input-phone-5418.1.33","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-ZoQZPaF3ErS4ZQX3imMCyJY4RqLo6/y39uywJPVG78vRAR76pot3CNaa5SWogv9Gu1kJnIq1NUTc0ompbkHP5w==","shasum":"4d156635ccc68ee354ddf80816eab4bb0a6fa942","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.24-alpha-input-phone-5418.1.33.tgz","fileCount":10,"unpackedSize":73835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdsIAcCRA9TVsSAnZWagAA2hIP/iSbiekTpO1oJ66wC2oQ\nFl+zJ0CGDKHYC2YNlckmpQF5Ja8hBwWi4APfZmUtzHOsuvmKCebfk0cFnyQ8\nAzXmxAKwsfV3k2h4nf+aiDWsbpgZhxAF5cwpr7vGMSlzNIkVq0mKfaziGe5V\n3LCP6OU4haYCFqX8bZI9LtTAV8jn8xrow4YNZCC8c0q7enH5zr6IG9OnXZZa\nAvdsTIi8uu4y99/+Y+/gNTCvVBMInadacrXA/k+GiQWj31r9VTupY/Kmj/HH\nsOJJTJv18qtubK3EyJh4BeSHDolGlwuX2SeZOGIhJGkCtSzYExZUgPxO138g\ndJGx52y/qqRWpujXdEW3MdqzHnXqHSTv1KAH4//UHJ8//RFx6IJA3LG1dgHX\nz7TCfMOEuaNF9niSj+oKHo7kL/SJGXYC8rZcAh8zp+gv2hoFQH5Lty4JWAzl\nUnPy+G0jEqIGGj6opDILH02dSWAAxOiEIzVBIRFeEyJAtL0o27qloEYDzVQS\nsBrIUEmEsqvyi2gC6xhof3QPi2sA4P+a/qp89s9Bapw+xBVREVvg5A8UVL5T\nuaBrq8p4u76f/WD3n3WnY1rpO5ofxxFxI0Tjd5HPUA7trsdwbFyIc5+mUOdj\n1N6qcdFwvFCjfVqaSQRqNPg3KBAOHuv5ldsBj4PY6BK+G7MS1sU7U6dA+WCg\nZ1al\r\n=K9PB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAxzA78+yE4K3lQ+ZTj4eGOdnGAVxKyUBU/jQW7fgqKwIhANu2k8K9w7IdkICO5oE6cIzQ5dvyT89yR3DBjRN7vRco"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.24-alpha-input-phone-5418.1.33_1571848220123_0.08458128399529219"},"_hasShrinkwrap":false},"3.6.24":{"name":"@crave/farmblocks-input-text","version":"3.6.24","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.1","@crave/farmblocks-hoc-input":"^6.1.0","@crave/farmblocks-hoc-validation-messages":"^2.3.6","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"a2f5a20affe9ce4a0170ed09277f9ae69781506e","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.24","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-jN+cd5pAgUzcXWDZPtNhPP/l1rzuJK+gxW9P7r2lvTjo9qWM//r+rpYJo+vWWh8Iyr9TX42hPVDQNkr7tAhWuA==","shasum":"6faefbbcc3b8680f1993900d9833424f7ba7bef4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.24.tgz","fileCount":10,"unpackedSize":73983,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdsIO3CRA9TVsSAnZWagAACzkP/1agTleoPKA5SyjYDTbM\nKK2q2p5nq17xEuytAxFA5kHAr/RUyFfVMF7NXnWF2rhwU/mVQrMLmKnlgmMv\nXef3y+7a4L6+OsgRYR9M0DQu9VxkEOvTcA4xtWa5ixCd8rimLsVTod7qIIiy\nlcinB4PEdUjuNd38EsEz13Miiqjo5H2v7em/GfoDKtSeNkaIK/zXA7h+Bl/L\nfR6Hy5qijcLYGDbYoHNlqHwDTh+KElaPx9vKoC7E+4ZDg/sETtWVjkFIt6Lg\nUiYUrRracySjVFHn97udYOKy5RsXyr73F/sLZtRsp6duCZ4zrQNeGS2EV1SZ\nfhEJEv/JrKHT3NiGD0V7zDOkhvsAwQOMS1XOZT56Z/I+efIGpo3bNtIS4u60\nnXem5Dk5B2aFmyRG/beZYn5U4XaqS5OKPKcKQat22tzS0cLysFGybEXhWODV\nJw7CDHlmceiL9WrmgLByHwWz0GL5Tytr4u0OT+VU7YY68sKZbf5T3TJYYx1W\n+FYQo6RbSjlMXyBZmks3Q9iWB6FfR2XfXDoceE4cwY4FxRnluazD6xgb72Uk\ncDXZ3iYirtWVu4+jzsz9ikWljCIUdA5UbHiaKcJVJxfrhR0I7CsxW24AfKaS\nmZ9wZJLUNxnSW9yTBJfPpUjL2V0EELyiInQwkb4K4hIa3bzcsLSf4X93u5qA\nE3vC\r\n=PCjK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTFDtd3QohxhRJOL5juqQhkgWcEJvxgcpKDSw9ggCE7gIhAINUg2ofDCW9LMhjOav015p72SfJmwlef/J0McWqcc3U"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.24_1571849143176_0.5689818496453563"},"_hasShrinkwrap":false},"3.6.25-alpha-side-nav-js-5441.1.47":{"name":"@crave/farmblocks-input-text","version":"3.6.25-alpha-side-nav-js-5441.1.47","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.2-alpha-side-nav-js-5441.1.50+4fc1e7b1","@crave/farmblocks-hoc-input":"^6.1.1-alpha-side-nav-js-5441.1.47+4fc1e7b1","@crave/farmblocks-hoc-validation-messages":"^2.3.7-alpha-side-nav-js-5441.1.50+4fc1e7b1","@crave/farmblocks-theme":"^1.6.2","react-input-mask":"^2.0.2"},"gitHead":"4fc1e7b1c75f3616e2f11ed11ebb2874b98df4c3","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.25-alpha-side-nav-js-5441.1.47","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-X+pG2xuDYTn60igCzXF7CfnIVMXrNJCJObPT1Kwy8iDT5xeF7KgZCzj3rPUwGNf8s9K24ICD7W1XCMWRiEUryg==","shasum":"33bc399aa55b0cf580cc0ec46e4634d437f0a11b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.25-alpha-side-nav-js-5441.1.47.tgz","fileCount":10,"unpackedSize":74131,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdty5XCRA9TVsSAnZWagAA7RMP/jGSM3QxsWzqpT8rojoG\nR92WyoCpnIZnIXS600Y+gXku6ot2lZTgcBeV96RzHZrdCO/LkkhPsIBfzwvp\nrMXftdRaIzfx/EYSvaqWWcv3/qjr4tvZDKPTl1zMezsJlvTIQpEJqxZLq2He\n7PPO2q8X+OINqs9BU+Pt/Wfikiz/utKXud2x2WCHt2UpfusFtc/E6IPwQSVE\nvJiliacfvqXD+Ojgnp7CFr1y9eKvtnZ1DwYKO7WmCGQndCr87u9dQHHC1Y12\n4Il8no2nwJX9LdfRfxm4Y1bWJl1EO3SwW730OgXbEZJhgvn8LuhyFnwQDSw9\ng9wHfzvmvsWh1SVBl6dU2BFFel52fgVV1uiExoo7r7Z93C9baZhYlULa+s6p\nUyscqxUWWPL2CpuuLWPuNNZ8by/cgpNIFWXxOZ1Pqmt+jxFnusgRi1kZRsl/\n+COXf3UCPQ/ULaljO4WkplY9dL0owGymZtRi0Cap9R3GxG/SIAMp9wvuOMpo\n9ux2nai5ZfkUQGktqHtZG59ABn90qwzEymmqb9Y9SDQeG2e8UM+YAXQeiBv6\n8BwLYjCk9ZtX1VjmnBNYr0TA8bVx2TkeflOrwkydgtYkxUVIjyrvgJoxrkDm\n50+Fmeu5fm7fSPJNNAhTrSQxwtGCfndz9MY3oZIledX4FtEGCFf1zcflFKEL\nZQyh\r\n=N5xl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFZUkha3+1cWAQtqHSLqmz05ioIUfnllg1mZyBdy+CFbAiA+HodySPZkI3uMeucUPaAJUnE7tpmXyOHFnDD7eeSHcw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.25-alpha-side-nav-js-5441.1.47_1572286038549_0.6971181164084876"},"_hasShrinkwrap":false},"3.6.25":{"name":"@crave/farmblocks-input-text","version":"3.6.25","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.2","@crave/farmblocks-hoc-input":"^6.1.1","@crave/farmblocks-hoc-validation-messages":"^2.3.7","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"067154b4fcf88027dce3998aafbb58410db0f2ab","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.6.25","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-CRV+juDhobOrV6KjL7IDaAMSyyW1Tj8hN3bnp1AiC2GcYex8xkDbmuk/as+YoXFr0lx1t1ifiQXqQ2uJSJ5xEg==","shasum":"0404e95540244d7c9425ad10098abc19cbd1803b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.25.tgz","fileCount":10,"unpackedSize":74211,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdu0klCRA9TVsSAnZWagAAak4P/AquFJR4OheLNgmTWfAT\nI/8wz7nGHlfZXIBwrIA4NlqUEqLJ18KXFx+ujO1rhKazb9glDQdQfwAyYBHB\nIH9+OQUDWQoaeToGOD4jTOd5hPjx2fsX0y9Xish6nFMhkOjYwhvKnbp2cXU4\nNBlfCWPpEHxojc4MhAdu3AXnkUelw8GOxy+2xZwF0ATiIFTyA5XHzm6YSySo\nVqSKCpR0OAbAE6Wbz7Ug68IOofU9eoL0bkNMNQkcmoPfwuR6IRMgsaTIseh/\nof/MnsuNZIQUCgLtUaNlN7sNW492+Na8ohqt07IA01jJviu6tJi3chtGmWr9\nPvmRDDkmeJFMu0FLuCKQGaHPiSJPH4jUBkWoOgTRAx3wrfYP0q2z/kMcdSGM\nvfKHj6gMLRlgyw9OPZtyvNBksUf2Zd703HON7cUgG02FJM+JZ90yN07eYCTO\nHsb2ybPFCK388t9igCtCW/yPbqV4gbxsn09OUENIYclBXgMBnwwYYMTzJbrC\noikfw/mJupg+AA8BJ949KT9BqOHv9e8TS4pBsXFMIAjedZtMqfhj/jYbzbGs\nACXj3CeMeUDOLxlbHeDsma2be6qPeGxekMF2sYoQYsHUDmqeeBUQvWpxS00H\nPhYk2p2thyeO/NHmaV++Wvpm1UAqTfTEsVGBmm0AjaVwG2OtygRKh6Y5YNQz\n+ZCE\r\n=9D3w\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbXJczgFlZ5Pa/mbW/nlMWd7nMMFvHHaWjxKYC+G5z2gIhANv8oRqGF6vhiYhmraq5iygNCLxhaKoNt6W1Nivz6zXi"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.25_1572555044712_0.7006836654698803"},"_hasShrinkwrap":false},"3.6.26-alpha-mobile-tooltip-5522.1.5":{"name":"@crave/farmblocks-input-text","version":"3.6.26-alpha-mobile-tooltip-5522.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.2","@crave/farmblocks-hoc-input":"^6.1.2-alpha-mobile-tooltip-5522.1.5+afe1f4b3","@crave/farmblocks-hoc-validation-messages":"^2.3.7","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"afe1f4b34df816ef08d0f1bb285decfa30918383","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.26-alpha-mobile-tooltip-5522.1.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-w+v3C5hkDZ0HdtS0Dh8taaPhUAqMHM5DKjmbNvnbgxMlGovRXs70Tj+SV+40+DUgUgw8gTxgIvNtlOtAyQwgTw==","shasum":"9e0da50e28b2a3c39e257f328f3b0889e18ae079","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.26-alpha-mobile-tooltip-5522.1.5.tgz","fileCount":10,"unpackedSize":74289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdys6yCRA9TVsSAnZWagAA5boQAKEEfbbEfxSbD1iD/lyY\nqOxRHUWi62fh6sdC9gxBp+bEME/TtBKCG/YJvHKm9jrVL/WUHL+8jIF6L0sF\n8LYr9Wv1aA6sSEJu/jGmEfEjN5YP71iy/KgLTgsel6feDOBVnuyljcqqRJlC\ntSPN2qJqK6QCWaVYOS1f0s3N+yvcptI9wUlpFPIGeTCY99Hg/43+vv1HMPHK\nvWl+Q9lVCDTDrBDLCXeuzLI0cn8CuGGTdEDyAbe7ncBndu2BBO6YSve9duOA\nudzwfEgydughXUBKmJmJkvZhSnUBnktqNd3dyOA09jpuchhV9BSGHFaYEJFW\ndluJH+VCbZNf2Z3670HH/148Vr+l8bsg86cjlCGoHJWX4IphqFvBcI8yFTmH\nMhQZa6rBxspSRw5z8S9wzysDSsTOO01pvU0/kcF6kr0WdV4fC/tSBiqIQRgd\nyaQAebLKwM31VX5lmkd1SE71fqkGI9Ub5ZY6egANb65/6VmHiEZnX/d1SH0c\nvJ+z0lT2ud834fnQj2MwQ2PbdZv/Dm1SLx0fuDNk6fNA6DoCNWTp0xdWI9Lk\n0euapw3DCE1KGoLMgac3FeNtNLE0jZcmeaqXXf0p8b7qE6Krtwsv7xw6dwH2\n7X5QmbKs/kOXm5O89eu7w8EZSyfDevD+NaOLx9p4slJgkMVne/SKPjbitrQ0\nIJ8f\r\n=E6/W\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDU+44/0kz53dI3C99Lmnh62MpIGwpoTl+xoBjbH6sNIAiEAwW2h3nlK278ntsSRxr3LmGtWQStGw6X8G7oxhgKjqKM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.26-alpha-mobile-tooltip-5522.1.5_1573572274148_0.8193810279904212"},"_hasShrinkwrap":false},"3.6.26-alpha-use-new-icons-5530.1.24":{"name":"@crave/farmblocks-input-text","version":"3.6.26-alpha-use-new-icons-5530.1.24","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.0.3-alpha-use-new-icons-5530.1.24+5e59f4bc","@crave/farmblocks-hoc-input":"^6.1.2-alpha-use-new-icons-5530.1.24+5e59f4bc","@crave/farmblocks-hoc-validation-messages":"^2.3.7","@crave/farmblocks-icon":"^0.2.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"5e59f4bca4ff8464befaccc59e4f9bc812c867c8","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.6.26-alpha-use-new-icons-5530.1.24","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-youlXis0CTZ+Sk3tI6d7E0qXomdXBhn0vnaLjUMX80CRplWXCMppfYO2Q0gdpVVMGr5zebMhz9ohjm2mHa7f9A==","shasum":"c888ca2c2871968b66bd8f7ec8b817a962442dcc","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.6.26-alpha-use-new-icons-5530.1.24.tgz","fileCount":10,"unpackedSize":74407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdyvOBCRA9TVsSAnZWagAAO2kP/2542gyXntmzFGdm3dW7\ndUZBP/O6F4j3RqeKEALAA6MWV8RvBF06gr6zOGTXysmD+RX+ZcSAnWd7iTe3\nChq33t0x7dmqZleSCMP1RIJTSAjamwKCPpoclplzQ5IG4O622HMapCnBsnsN\nFV03yOMqbUCmvwnEla4BRXBPqdDaDT2aSblJ/EpSeEnfMzT+q6YBT8ioWgTF\n/fAM5EovccuB7rnHfMoHK1OXoM58D3RDlbGgV6SMm7yDNdH8aYADVcKiCQio\njcqcVtuquQgDwAQ3/bviEuMr452isiUf2eEnB+Hvg8p+RrJrkfPxavcj0vLZ\nUvB3sC/MEEaMG7nzqXx4CibGcSPCB602uQnghjoeHF7YOUrnrDTqpsiLpEVX\ntyNMUZmKZz/nxHk1X8z6VNFdZ7Thch35xWQexJM2n3Q0m03xldsaoVvMHLVe\nXhBjHZCPydmK6RbhRylD3Vgos2SbTebR8YMOz7F4Z5C9s9w3gLi5KXSmzA+m\naIQT+xLQtnrRvnUQRroDvbciCqk3MeFmdxcp1LZRzQ4PfBCgU+l4yN4vIrQp\n77bZQ3Fd8ajLLiHsBgQYNCu1ApidD3+VKjoT1gkl552TPTtm/4sBWiQBQzsC\nSznDCiHlKQI/G07r0mrNiBxwezbcZtq9IE6rmDt8mnyFyO4s+hY3tUfxrPgB\nJasw\r\n=cH+7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIES7g8qh3HpMVHfvVcMWLxmLQB0HXuSIPl2MoqR7CYorAiBQRDcZ7FWHmMIOaupceyFnXF3wYeic8ZTLJyqIe53pcg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.6.26-alpha-use-new-icons-5530.1.24_1573581696603_0.17533376523407296"},"_hasShrinkwrap":false},"3.7.0":{"name":"@crave/farmblocks-input-text","version":"3.7.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.0","@crave/farmblocks-hoc-input":"^6.2.0","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"4d208c11aab8de7dec980d87d8386e1afa265e20","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.7.0","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-eNVVhaFxaQjKXCkgV509Hht3Mac20RegUgWdVnMJOWe2q7K9UDKdaRasM/p5fNfKJ2FKCRL3XX1Yn48mYFeR9g==","shasum":"fbbd687f4e8000c2d1acac691584744495dbbabf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.0.tgz","fileCount":10,"unpackedSize":74518,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzD6hCRA9TVsSAnZWagAARBIP/1KztehtRe4jJqAeKkSg\nbvSW20ua4yBhnb81qs53OKg6877ECCYWp9UhA0fMUQgpjkJyVVivpuBasIWE\nk9pIcH9/0izGsri1qDWVKxrsY8dNdnqnntrc7syVzBUua/PF/gg2uvnPP+SX\nO+nNLds6QiixZLHStPp4rk5OkiiduH3d1UFY5GZSZIa/OZjIvK7Eh3+39exu\nKFuertbvdshWwNLm027JBGkjuEfcaSo1FqvynjFQ237rdXiPy8gayrxbnJK9\nR5B7TNezjUu3ur7H15BzUWmZYXbMy275BfpPuM+7gafWaqnSRfPC8JK3pOsJ\nA8/Q5fM83HN+kElQVuwKm88/8Ebl/09iGahbfj1JLCPebH1o5u0Bz4PauJU0\nJLUfL9Ek+wxl5T+GmZiAaa2IwW0nn2IUp9H1OMibCXB4r6UUK5FpvsbeEHlq\n4ElwnJSZCtl8r9QRNx59x7ByJfv2Dd3j1YqLT2aoE4tAxpCMv9CC19N1GkHL\nyU5zVQ4deF5xeKPLGEpQjZIVxC9vUDAV76zrUGlXW0s2htSBfrUpzGNi9Qpa\nuonIIMM+RD9O5LFPQcyX9lj9y3lOrPB6XK6SZ2fMeIG11YKDcFZOxLzXEnlo\nUNEkubr0dkgLK/zboz1qzUfG7c74vIZsomhzBgS1h2rT0c0+/sF3WWFimk9H\nnx8w\r\n=Vvkh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFBVSw15zVibUxUukx/HZAKzLRONrkGB3MrJz/OAwvLnAiEAwNFhQRKrOe7IvanaGtfovOUzUmiyNiAlGuWGSY1MRD0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.0_1573666464614_0.922699078869258"},"_hasShrinkwrap":false},"3.7.1-alpha-mobile-tooltip-5545.1.5":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-mobile-tooltip-5545.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.0","@crave/farmblocks-hoc-input":"^6.2.1-alpha-mobile-tooltip-5545.1.5+52685bb7","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"52685bb7d9fb513747202de0f208adeb6902755b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-mobile-tooltip-5545.1.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-BLZWvcTIQs5r8U3p9H/PiMHB2LoaOTDqtMMfn/o5voJgV3ro+U7GONHfrJlxSNegIkQCVdZBLBTvCDR5WrGT7Q==","shasum":"ea9778e85d844c889dcbf3175a3e2e70636bd055","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-mobile-tooltip-5545.1.5.tgz","fileCount":10,"unpackedSize":74596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzFUhCRA9TVsSAnZWagAAt/0P/1okKTvuipcLPbxb49iF\neJBKHiSO7KipbZ3ohNeoN9AgUeE00L2dSFk+zc11pbwFvVrU1yAO8jXh8abp\nsggYpSWkTju0HKSgjwKYKA6PlByqubrrUOmr3zT6M7BwNc9w0kmCK36Mcn7q\nrpKhyRpp8sBOY2Lb33NTWIABci/BFaF1uFQdihWs7VsRksmIJiuTFg/GdMYp\nBzByOvwvlbo1ZaL8dFhB+PQEU/IbCv0WM5x3m1gU7PYvBtII7vMJaj4e8hex\nmobYrt5NnbnDeSlVXeOUjmNIGjCA4kgYI+viWvkIk7sIZni9Et+cd7TxLXWE\nuJXeM99yAV6/nTMF42dyHRVRWmjwAEPTGR+2g5wDhOMdtKl0+758Cs1alBrL\n+wJe2BV1Nqa1T8pyNkuTOqPwV8V2Q+8ibl9BC19//Ij/xSDybTHH0D5DRFtO\nr9c44LaEudDp1vuiQY9spK2HB3ti9YR+q6mF17bjwSmrfVU4XVNvKXjQ3FSw\nIxyN0xtwy2bBBy9kQwVcsjKRs8IfHPTOlsWeEdD706uUh0GDVWCgdZJSQQsK\nz9D37TvgMApuBTDHvrwlHmedbluj/92pIArXbvZDdrZ3xBhM9reiSXmRRbw8\n6zJEIfWczlCbGuQZaWgrS/aQNRzXlXy4KO2O0/aS9qYT6ZA53TAfuuHkv//3\n55Be\r\n=i8OJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3QE8j6v5PqePKykSyWLNSPumMwy212ikC/2kUI4eJ3AIgXik47QMn2ZgBoqyDUb96AVClYMvvTxyO7VeHCpKjfds="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-mobile-tooltip-5545.1.5_1573672224698_0.5533572758815566"},"_hasShrinkwrap":false},"3.7.1-alpha-mobile-tooltip-5547.1.6":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-mobile-tooltip-5547.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.0","@crave/farmblocks-hoc-input":"^6.2.1-alpha-mobile-tooltip-5547.1.6+3630e8da","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"3630e8da99a0fecb9b7d9930763b24c9df1014a4","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-mobile-tooltip-5547.1.6","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-i5fFzxRa0mLrMaRHdqkNql0oFf2fKUjvgo+4MuKIkDN9kWEMz3p4sbZNS2xsBDyGG7kwVfm8ifs4lTQbNzpflA==","shasum":"6527f59d971a57087e64dcfea2a07b481bcc7af6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-mobile-tooltip-5547.1.6.tgz","fileCount":10,"unpackedSize":74596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzFsdCRA9TVsSAnZWagAABLwP/2EF/UKGskuKSLXM7LqR\nRQULbiq0cCeLz9z0Zd+DEFnN0zmMt75eyIMumjPZW3zC+tVwbtosuKrxwyFW\n4Og0IbopIhn/363Uv5NPQfpRdZ/paZ5EXIKgcwq3e+2mIUh1PA15QiUdz1Vs\nZnnmlTRzI58XjlweNjhgQcMoLgH7IXtGnFsS3o8QuVom8NpwV6GUr2vRVlrm\nWmH1X2ukcb/Jd1OR+EfgByHIoq4N2wGxwJjH1maMyWaRUnpupY/RUettpgxH\n6MFTOMwdjLrRIpiAaCSV3gGSuQ1lLME5QzVudlHhGWF4no+eANaSv8tQUctx\n7hf/K4044h+V3fAFbF/LPgW7nU8neF3CWMqFHc17Gi8Sk7erDVW/ue19aeE1\njUZ7GFQSBp8byM1WD/VunV/sWO8U9zyB3bSCT62gAepBYnbNnK9iyWU6rUZ7\nY7JwvINmqhaULDw239SS7sIMMhEfdbmVGCZPQ73PxmKydBlNSyqcBWvjYPKg\nFZIOGGJvsagPKDuq6cedL+ZKPbb0ejKW//uZyCgwh7SSwTEHPPo6rP+iONhU\nhJL8SUCkAIYOX1F1j8SKtq66L+sItCNZk2rOHmm+KhJ/Vhw992IukOXWkh8N\n7vIjC2/3otUERDRoBRltxyjS2cJ9y67QTDhKIfIqhuSGgr2Xbg1q1s4oyqrR\nbXN/\r\n=trxC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBFlpmFePUHk11B0RhbEa05AJLjT2nXtUpID/LewBBqcAiA/DRiaYrn9O9Angd1vducL7NiGVgHrq7MRwpZRIymCzQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-mobile-tooltip-5547.1.6_1573673757283_0.4058003453269412"},"_hasShrinkwrap":false},"3.7.1-alpha-mobile-tooltip-5551.1.8":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-mobile-tooltip-5551.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.0","@crave/farmblocks-hoc-input":"^6.2.1-alpha-mobile-tooltip-5551.1.8+3df06109","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"3df06109334f7d43897b7cab53603ffdad0422f0","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-mobile-tooltip-5551.1.8","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-6jY/Xm6OrT764+TLmJCFHItynWfBJmk+Wf2lZ2fNdjNOkr+5JEeT0zJ7liSzLW24h9Q4fFQQcwok/kjvD2roUQ==","shasum":"9b2973141f0c0fd2cbdd43090cc3c789b3304b40","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-mobile-tooltip-5551.1.8.tgz","fileCount":10,"unpackedSize":74596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzU7FCRA9TVsSAnZWagAAgE8P/Awyv1SvanpoPJPgco75\nl9KM1/3lPZa2Gin/NgzJPKlAwWmv7FJtjNEVd568yytY5Lb/43dQfxgG3OYD\n8XLd2akMXbrlqZtYi587RuuIwgRULFV+vk/WWA6zoG+guvzfOM01tOm1pjfx\nqGkyEtbTYGcJUOccyWvhkJ73MX+nEDo271cOVvGT+5rsKPEx0J9x4m2jva8W\nlRtDYCg4Mk3vFR7hhkOd4ZxR8KcQyt6rtMvqgwZA1fW86QePklieayZ/MaF0\nB5JgN7PfNG0OMy7+RNYK1ctDnTDio9jwiyzBoiA47fsz7cEfVz45tGAPiy/c\nkSdVUKM4+RhEO1DdMCMZpaArzwnfLK2zQw1+GUlQQEOnFO6+LlNQVVlirta5\nemU1l/Z+1FzRHUXBTuU3oh3D+gWZnQiSsKHxiQh+EozmTOd4JxRTNxyAJYya\nGkEogBrE9+vV9PlkZaMJr2cYrQ/ZNVpmXX0rR9HcsUSvOVcVZ4p9l16OJLsn\nQYABHxSwLkn58BJwmJ7kyXgvi3pmu4hsrS4ZnylMBT7D/7Q8S7jLS2AJvCTW\n00T/LXLZpS3RmgmdmTBSwdFvCC898Dt74x4WAcsjIiBJkBA8DjIuNVSc1IWV\n/R4ABqQviCHMekdrNVU2hIQwrSHUr31Lbu+JMch48ovWuKmNuDBY3BQzoIxE\nFOI8\r\n=15Be\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvfbZEkEI9hVRReQ75ZxeS2SLCT+UV5SwHZjvZSRTxQgIhAMxwc+EOXWmFZlFBJu2pu5fMsHSkp+Y4TZ8pFU/UEdj+"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-mobile-tooltip-5551.1.8_1573736133270_0.5877499894082563"},"_hasShrinkwrap":false},"3.7.1-alpha-use-new-icons-5553.1.26":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-use-new-icons-5553.1.26","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.1-alpha-use-new-icons-5553.1.26+03146354","@crave/farmblocks-hoc-input":"^6.2.1-alpha-use-new-icons-5553.1.26+03146354","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.3.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"0314635482b06bdef18fff305b0b4f2143ea37dc","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-use-new-icons-5553.1.26","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-jDv9QpR5qre4Yg6D29bF80htd0ip6aOb1vCJuXfw4DXR4oJJOzCZ8vjh4Y6jyAcbZCA0urTdTANrddHgd2NKdg==","shasum":"3eef3816395cec061745c9b4040ef98b5e692150","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-use-new-icons-5553.1.26.tgz","fileCount":10,"unpackedSize":74714,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzXqPCRA9TVsSAnZWagAAIjsP/j2XKEPY31hu0P2pKxb/\nJAHp20du5Rn/Z4QHyZdmlsNxRqwNWXu2L8Y00CUeN2eCfahzkOPpfeQL2crx\nSy7BXX65TqLU0DvWgO02dU9i6AVrQMUqVNS/H3ZlVW9KyZ8zNszu8hmTPi9f\ndXnjtpSyLH+P1sJZVGplogJquIhgcYzip8laU3A+jStLHWEqxSZ1lcBMsX9a\nRorS293qHIqcfG1LWTVw4C8vFI3vspzDxM6dJ9S++bNz60gbryEF/xgFps4k\nVRzsBlj5ducyxbSXYpL6ZwIw4/eVNVIk7FKJ9uUNJn4n8D/OWuGZG2anI4pc\ni8kJhavFwgLI+meRV38QqqfxH2o2oqF3S97xnyZmnqIwyBT0gygYBBAet+8Q\nWmXbVNSmxTGBABIaRKAtd2jGqjeHNjE4u/fjLT8jyoaR5uDM94qhmfhNCZTi\n71n4BOub4UiLvfVSzZAglJslnyPTUHyqQ2eblXepKjCP279IVn2GpgneFN2J\nqpgLpAHL2s+Y4XDB6ptdNywkTUtb8z0xVBFtG+j0WYhDLc6aPlXlLHd2B2Qi\nAhZ3HcKfHyxd4IHzBs+7V9WwKyz91aHdgxX7JnQ8A+d+aAipAsYjunXsp6Pi\nFSMJ2ppHKAo3rtsKs7kQblUkvhld2td4+PnKJRtrL216H9eRnAsfAlMZLTYg\nOfyj\r\n=mJjR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFtFUGQsUbuV+aE2TnxZlZXh6KGjsCodsioBSGkIVUrMAiB8Vz7zHh9hx/oYBWINCAMuqBgfMsdCv62oXYOVrUBqTA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-use-new-icons-5553.1.26_1573747343297_0.6275957524947753"},"_hasShrinkwrap":false},"3.7.1-alpha-mobile-tooltip-5557.1.10":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-mobile-tooltip-5557.1.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.0","@crave/farmblocks-hoc-input":"^6.2.1-alpha-mobile-tooltip-5557.1.10+19c4adde","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"19c4adde1a3741d51b539f1cd72da291276f337b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-mobile-tooltip-5557.1.10","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-IUDCvKIeDiQ5tW1IIRqtb30AvhadVhjB8+f6PVADDHBmEaPna4u7Q70al6EHFRQD6+IEWKfAdws+JU70k+pI1A==","shasum":"04695cdabe9d6122fd020089c028bea2de53c59f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-mobile-tooltip-5557.1.10.tgz","fileCount":10,"unpackedSize":74598,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzZpuCRA9TVsSAnZWagAAMaAQAI6Wr8vxZgtc9E6W12uM\n+imRy3SjW1/wRsns9Z4kQ2y7EqfFvtiWDIzg9Cbt8K599uL1dV11lb7CpOP5\n0goWOnrw5F+G+Wj0YeXVd2jiRF7HLLPJfhLheyBJvT5yqhtMQB4m/EFh7P17\nmIlcbe1AzMQT4MXcJlmsZetT2v/3KKBEdTSpPGRg6J6BcbIqcCirYKJHMDbt\nF5hwi8l94UDERPWPz9aAUPx67lfQBVHhRCdTNciDMeNoYklhgJbGSRLW30Ur\nrMuv/vXWxf4KMakbq+BxodL0N7iAhr5DgxuVKFtFbW2JsRQZnFIZ0xJqJ8o9\n3d76a1BxUQP+3aFuvkLzZ/3/ZKD/s1YbKMWzC8mgIVk83MxGKgM2OzipxQI4\nllmy+m6GpeOvWhy3zHVHh3n5UG4KExRT6J58p7T4LrtBy1kkhFPbeZFj2cS0\nDJXe0GSeuUnr6YUYXrRjZAjFAx0Dyz7nCwuQ+m0IEWkY82+MV1zA+mucVoz/\nn+ffMnlBge6mPaEYRUy4Rmh+Q3Juj4KAhOTd5UQy5MEmtyb/AWS1VGhx0MAE\n1HqHVWyG16hA+C/xCLSysJ4H7/VJKWwaozvZU70nLko2PmsYfVAD6iV5Yekt\nNjOM4Jvdhx0tdhIbJEKkZEq4ohcKG5SkuRfOsxtHd4WpIAGeffcF96le6G00\n4HWG\r\n=nyOZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBf+0CbSYhNS47YfIxOLlX5UK+M9cMpDMgVjc5BzMaZ5AiEAstHsSuO0HplS9AhYmWeE20nvrf3hlj9KM2TsxLKkXyM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-mobile-tooltip-5557.1.10_1573755502026_0.2267317463752221"},"_hasShrinkwrap":false},"3.7.1-alpha-mobile-tooltip-5561.1.12":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-mobile-tooltip-5561.1.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.0","@crave/farmblocks-hoc-input":"^6.2.1-alpha-mobile-tooltip-5561.1.12+b969ffd2","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"b969ffd2b56d5bad573d88ae9e2b7d7748119e37","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-mobile-tooltip-5561.1.12","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-rWkhKZunAStG4lzd7IkHELsIobMbDTB842zDDGfTjQPJjXEcx3FFYhAQdlMMSZ3T/OQfYsYLNOdCzKH+yXOCVQ==","shasum":"2c81d5febdeb57b282d0aeba58f7b82ebcbcb680","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-mobile-tooltip-5561.1.12.tgz","fileCount":10,"unpackedSize":74598,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0qC1CRA9TVsSAnZWagAA8dEP/1HBMOh+QkV+kHR9Lmzm\nJHuXcInw+IYfGCmfJdqr6pFUgytzBrrxLUpD7AxL3sBusrKu7XFy6VbYlRGG\nS0/cMq2zakAJK/SRQY0KcLrBLdQumP7KNOjdI/qWFvVKYo5uTAQmxW5c5EB5\n06RrV1A5Jk0bvqYP1ckVdEPo/mS+2fuj1/qaiSzGLEy33Dc+wy4SZ5kz1m09\nFM3WGfM9D42s1aYj9FK7TLkJ7Blp+I0EclidBcwdS0H1hSbSlr82yxIxhQdi\n1yu7s9byHLygAVFG6eQ0gQwh8qKcSbsG0tYsVZT42vWQYabuVzDgp54Ke4Hl\nfF2yJwNAQ4suW7vTvd6epcXS5/BmuAlFtUEg2NbELf36Hpr1ULxIAwLrwTo1\nwoP06V8WjHGSpGbaEJy4wcf7xmgU9g7IgBugcK7BNAI5q25iTnQ39jMGcm4H\nXAVKyfg2KkkaOCqTiMca+YBfac0uNOvd1TRDohc9At05K5GMjtQmLQdzRaq4\nOV9BNgA35Kv865BVNX691rxjGfghkI+VqZV2+enR2MYayRmXrxshFYC6J/D/\n9s7wWPrmBmkjDDMIPNIK/VdAo85IgdXkq4URKqbWM2LkwdxpveZXp9rrgqrx\nKcDqc/obEZLAnD8CL3z9np0VW8z9IjBQmOOeT0szXJGC6VCdCec6CFcPyQR2\nndCT\r\n=aDXM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDZokucF/1SEl31oL0uY3+tqPg7mlDiwe1b0BHrz0qkAwIhAKb4RizmFU1xI/QJ+cfl+EtQ2auKDcF+hQZQfV3H9jlL"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-mobile-tooltip-5561.1.12_1574084788608_0.8230560205269188"},"_hasShrinkwrap":false},"3.7.1-alpha-use-new-icons-5568.1.29":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-use-new-icons-5568.1.29","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.1-alpha-use-new-icons-5568.1.29+87f08172","@crave/farmblocks-hoc-input":"^6.2.1-alpha-use-new-icons-5568.1.29+87f08172","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.3.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"87f08172518bc1514f4b60bb58d601b6c208358d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-use-new-icons-5568.1.29","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-6YfYlZs2mAPMHmgT8ZPRcg7koDCoYxj9FqNOVyGj+ncvbzltKQIDN6AwaBMtcF8DjJfers9ejCgUQd78zY3U9Q==","shasum":"65bf1fc3d7a9fbe56aee493911081ef6cfd63642","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-use-new-icons-5568.1.29.tgz","fileCount":10,"unpackedSize":74714,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0wb8CRA9TVsSAnZWagAAVPwP/AyB3jEDbDJ5yeWdwf0j\nP8rAPHUNnnNeaXhjyrMabTxZxZUCYSl0V6LEkHNAehVoXV4WhfqSQM0B+U37\nOacNvH3MY1RYGBvRH5SsobaPvENkTfQcFtb1EMl4DoEdDPEYUa4Wor1rqN+O\n53fjUj2VKObftNiY6MgR7fdC2d0nzae9boYfAOg+fMVzcvzLsUuAARfPuhkx\nlaoyZoDWmJFmpCIcI5qzYDJ5IVkob2zMsSft73yT0NSk5DxSOoUDDjADngIA\nCsm4rjMEyOsahtZUEWQ7EOZkaC6lPbKFw6xhyOYYcN3nS1wbtQuFceRcDCss\n5LFSNSzrFQQc1/pnfIi9HV5gOBBxX9Cz2b0ao2vNgzfCVPfSdjYw8SApGwy9\nMSqJsxj4wTXFVkeNRSw0kW9kASBjVrXZ9NcDJ2RACgDp/ofATSwAfDVSCMEx\nBEmEpHdBODhwnefuzva4R0XK9PUOMoxvXb0jhm9h4KVkjiiCdGD4OpgBMqVO\nvE9X3LU8xoZf8DGZ1VNEZtPiVoOmC5B84uCl5GQujaVQQGjyUlF5ZTdYfh5U\nkmPOKdlXEmNmSw2+uGda6ZY48yITZv/fTeLPq+8inCwJlue+3gUQAmxov9w1\nvBvXrt13gODcJ8vnaKfR97lqgwPUcWM/5/hs7qlMF+DcNSXaexNaJXo5x8vP\n9ILc\r\n=8PR9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbQU+5z7vxc13dbsHHpzYZn0wucTV+kQpWx5vZ+nH+UQIgIK08a96PWUWgU11uEk9+z6axd722QJGxEC9Q4wQlKuY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-use-new-icons-5568.1.29_1574110972157_0.2093710167570002"},"_hasShrinkwrap":false},"3.7.1-alpha-use-new-icons-5574.1.34":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-use-new-icons-5574.1.34","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.1-alpha-use-new-icons-5574.1.34+786ed1af","@crave/farmblocks-hoc-input":"^6.2.1-alpha-use-new-icons-5574.1.34+786ed1af","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.3.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"786ed1af7a501119a79b8e92642772480116b4fd","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-use-new-icons-5574.1.34","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-NlIuuXZFontmKbWoKGEMa38VsOzMWkfUEBGq+cFA6Y7JGfBwrQcyFYWSU764uoyDJTEd+dyleTARCR5lhihJ0w==","shasum":"ce649c4609a03e4a876a3a7d739be103e185e049","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-use-new-icons-5574.1.34.tgz","fileCount":10,"unpackedSize":74714,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1CbeCRA9TVsSAnZWagAATNEQAJzKOiRYbxiLJlSaPAcz\nbYAKNG/T4nCUQFscOttgBmZzU6cJ+//wSuFiT7g7KykV/S+814gSpcAeYeSj\nCLFcjg21OXGln0uB3/k/BicMGCqLDzG3LXft2T84p6vLr5wkRlbDyhlZF3D1\nw6VMZJ6AEowOe3jPdxlaeMQ0FeipvL0hq8Bxby5V8BMWoMU/fSDyIhUhSi2h\ncImmwxtf3oXVet0YuqEGMLmnGKWXBRNbSBov568yODmFHZ3jOuJiPdl16Ch6\nfGLplUeiekKcYoNuXR4A7R5W9DVXUitEDOwrCRMfYp9CRMYkhuHbHFEx2tbz\nfoHFrp0pwy0nL/Fsi2BiHYC8Mgw0zUM6kP3u6j8tOq4QG19Es3mzeJ0bEaYs\n6+6NPXgh7z+ifNKr7TImdhRduslYCAAyZgbSvWC+rW+l9fWvXnDcoF0qCbFx\n6XUHAjKB5lQfLrMzsW1vGUl1hmxtGA3AT36P+lJ6Y1YgrG/ikyCzJsUlE7I5\nW8ymZ2iDRxaN3QVy4fMERXmLOZnwz2SQvUAZhBHNkzlcv/D+bByjjTMHaB6q\n61mry9UbDjcPFlrlbspFIMQ0RuW+OqDD67Gge0Rr1QqbQBIExad3m1e6ShJv\n+Gy7nzE7rn7yiWz0PEiwv0fJIWLVbvpHgP3hEWK+P0Dq5YwW1XvYvIWA8KvI\ncLHH\r\n=Djy9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC069Stz4dpTl67Xny6IHOvx0HYVVeOK3LMXThIeXP/lAiEAgdne43rYW7anSFcVMaj20U4brNJFXy3fm7PK2Kh3SeQ="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-use-new-icons-5574.1.34_1574184670127_0.8421132471553248"},"_hasShrinkwrap":false},"3.7.1-alpha-use-new-icons-5576.1.28":{"name":"@crave/farmblocks-input-text","version":"3.7.1-alpha-use-new-icons-5576.1.28","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^7.1.1-alpha-use-new-icons-5576.1.28+44673423","@crave/farmblocks-hoc-input":"^6.2.1-alpha-use-new-icons-5576.1.28+44673423","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.3.1-alpha-use-new-icons-5576.1.28+44673423","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"4467342328b41236dc1397d195b44ac7ae1ddc13","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.7.1-alpha-use-new-icons-5576.1.28","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-7NbrGwuRoomHbzXZ/8Npp8yWDUMgCpT722EBheRMABXbv7MMQbHDD/Eh2S6/JnBXboQlNxYd+kmQRSlxhupN/A==","shasum":"c8d0b8ae9bccaac89c7d1ea0639d85c47fb8f681","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.7.1-alpha-use-new-icons-5576.1.28.tgz","fileCount":10,"unpackedSize":74753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1CrpCRA9TVsSAnZWagAAoFcP/As8yDgpycVBmg2uEevX\nofxZ0v549onF6UueOacq5TY9wdQ/PUNBAKf/OTeGPR5hZslM7BNPzFM3g4pp\nRTSd+FxjvX23CEtI5zkIUWpq5bhyiN+mSJA1NiCQUc7LbGR5oveKUnvfT5bN\nKOZOH3nmpgYelekmXaAlCzCKWS9qv42PyS8omZwjQTGADoOr6ihxXL0RcGYB\nUc7hEeToiK9BBMAlxLXtSMY50Z1Py7LIpd0IY1hAE5eI/IIr9amKjZnbX2jn\ndygq3+zS3X1nGfNaoabJrHGZfTx50Y6+1/nm3i7oe5+od0DRAoF2D5YN8YpQ\nTv6earBXjhcwmtd7z0g6YsY4l4tCNbgIRquCybB1Vg336yZU+mc1kzz0tB7O\npZ8lNlmXkuaT+oUo41+1sAwphfKpOJ63ULjE/OQArSTehAl/nUwFGLKHjP9D\nijrXqk8FGaEW6TcHhVQlGqQ3tpUIbySQMMGeXRbzOxO2FzYSGiJSPVwDl0c9\n3+2X9X0YuflWmMI4kASMPLBFXjTtbaWnLSD+BznquwLsRe+xNGgMwXnHsAto\nbht3IVGHzqMoMgV2aXo5WBgTeECiI1eS1warDW0p41B8hVuonemShdSe9D27\niHfsYMgHBs7iRFKVDdDJFQRuwJUkP4jrFJikvcg+FY2/e8zYqW0AIMRxEcIm\ndvtn\r\n=PAl7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHIHKEAG1I4QL6u6N0nEIZW3n8CAUU3+RkOa4EpOZe66AiBCCWGGM6DWnm30yXsar6UEFnAYrmOPgeJpx+/5FtxZiw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.7.1-alpha-use-new-icons-5576.1.28_1574185704696_0.7756428836362734"},"_hasShrinkwrap":false},"3.8.0":{"name":"@crave/farmblocks-input-text","version":"3.8.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.0","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"9695821f91987c2f33270dc3074e7393311e98c5","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.0","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-KD5QerjO4wJXS4fXJf2aJCdZyWLAzHRI8YBO9v2rrEZ/473C6ozfP2NAIqentlatkHEOvjZmAxPxhFgMJc3lLw==","shasum":"109041f573b387fa946859e1edab93ca2b8b0c7b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.0.tgz","fileCount":10,"unpackedSize":74894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1C5NCRA9TVsSAnZWagAAW84P/iHbvp8GUWF+eUbMZv8H\n5oYThOm1BnlXV/kvpKAmQ6WXLTk08Dwn2aYvOSuZOpIb4PgGyHPQtm0l3tba\nVcCaluuKcUtnmFvX8u50Efcr51fvxOMdE+TS3kcOjzKz4ThBZwRezBIOBXbz\nRkVBhu+dPeU9/2pg+rgQUBjMSXYG9wS5x9PBXRb1CFiy8rA1KuBuRrQdjQL2\nvlfm6rzZfSgBYHNZT02Trdv4o6VjJNgnzkCE4Jq1l0ZZBTVZGCup7sbQI6kX\nfMTF85mEqCllOTi/LUm1HPnRln0+LHa1HW0jXwVwOHDA9DuW7LSfDY7V3n2k\njbOSjUKE+nhSxXTjihC1xfmK78tQRtUlCkTuK2ArWoaAzpPRXG+vuJNRHK6s\nADoJtS4d69AglOe16oIjUoBgncYIZJphcGzH/Jn0Vo6CDUG+ou7I4W6qUBBa\nSiCx+3Ko3tOf2u7v4Cy0YfMe6UEVzeWbpl0FQuVFlL6JXgj4klEnc7kdlY9R\nt65BKsp5G8aadH06W4T2kDBn9uaaqaPKeI/U+ryr7o4PICnygCCNieNufJOc\nIsI7xGJO56mGfTPYE4ZVTMruGGyT5Gic3N1TZZeCPS2pb3o4rziAGAe7Dly2\ntDJEYrZrcf5liIs7064H7fkmOwnv7/6YqE/sRF8Dp+ooxWcbMJmpBMa/LnFN\ndHuP\r\n=GR0V\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFrMx7w7eGE5zNIFgnumCKnh4auDlUshhdrA8UYb0VywAiBi2c11DrbbSQYjafgLrbBZQeF/mkICvY00100YtGmOsg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.0_1574186572747_0.5197628821911096"},"_hasShrinkwrap":false},"3.8.1-alpha-mobile-tooltip-5579.1.12":{"name":"@crave/farmblocks-input-text","version":"3.8.1-alpha-mobile-tooltip-5579.1.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.1-alpha-mobile-tooltip-5579.1.12+144ec5dc","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"144ec5dca3cfe8bf178077cc38374569e1a92b06","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.1-alpha-mobile-tooltip-5579.1.12","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-v3ESHrJvI+8nLquYNKXUJpsFjE9b+Bfh006bh2l6H0wL1Wiv/Sdj+nLiW0YGktCuDWEnIOGglq4gcYWWzqW/sw==","shasum":"e5ed493e300e559306d1b9ec50bdbda265566787","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.1-alpha-mobile-tooltip-5579.1.12.tgz","fileCount":10,"unpackedSize":74974,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1E11CRA9TVsSAnZWagAAfd8P/Rd3pyMBvXFXimx83RTe\nHJw1+fEQwBSvWNH3rwMRxiZJWZbibnG0mtH9CBmnnhiCZn85PYYnD8y4RLuF\n4Yu5uybgil4IJFRV8Fgebcnvr4hvJJUCJY40z66xtSOs0ssbK6B3kt7gKjLe\n1otByVdMba21rlAgw4cXbUSgoJy/wL+HEd0UePtgjdUYmaX1rEhnEj+4VguP\n3yE/cXzVjvERtvXW2wv7IHq6Xcj5ZGQ0l7hoeONoZhEEn/joznxzXa+LrMfJ\nNktQZ0holu12or82YsPJa+4dytKVd5cBGu0jO9oJpukD6D6ALtFrMxTh6EfI\ncpVcYCxkwLh1/L/TzEzuq5SzA6+Lysz+KNGciY0XBz6+n6ma1y5+Y/bLUrfE\nKRf33FBeH0X87P4mPf3dNAoFcLR7EfCmvyya+e33U0BDn2yuLqsLENBaBrRb\nbcdc3OVuJllUpiUca+vdfzEtMajO7dyMLb8/gm2E0RaPdqWWlY6gO8jq065A\nzRepRLZuZmMgQbg2gDF2l8BFu8JsXEAPySRHcZNBS3bfHAyiow2ybIDAHHRA\nwH0Xp+P17cTechm450CE2f/xXfUmem11HUgr+sqVCxRbvjnAk2ADhN/FURbh\naQ6SYoAb5DypA3t1DtZp0ozX65Yd5sxlp/19y+YJTCbxKiq02SPQN30BNFzU\nZjJI\r\n=Uy9E\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHP0aKsc9jvws8gVllmXd/FF5rylZW+aVeZtrwF0L3m0AiEAzYczmLt9d1ExLhPQDcLHHe9jcSuZuVbgE3fyzFxFapI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.1-alpha-mobile-tooltip-5579.1.12_1574194548877_0.5233254839877306"},"_hasShrinkwrap":false},"3.8.1-alpha-responsive-modal-5591.1.7":{"name":"@crave/farmblocks-input-text","version":"3.8.1-alpha-responsive-modal-5591.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.1-alpha-responsive-modal-5591.1.7+acd4ffa6","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"acd4ffa6d42e520c847a5029bd56a83cd59ae948","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.1-alpha-responsive-modal-5591.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-/prQN7wVtQXgRfQy0pvT0xoJGdsrJMABFwzXdGO0gr1DrJeZP9/LiAxluLyn7fUsyQWfzbTlaZRQEo4iFzCqyQ==","shasum":"251dba63a140ffceef2efa1996defe51df8359f9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.1-alpha-responsive-modal-5591.1.7.tgz","fileCount":10,"unpackedSize":74976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd2DfACRA9TVsSAnZWagAAYG0P/A9p9FeA7pCpa6X+zYyL\nNETR45o/hsItOw5xIutYSbZPcCKfHYd23JclZz6qsfrLWryZcFWDPHz+XYRW\nc3CT58a8FMaJ2YOmCORlLgLNd/6Nm9/tvscD09agD2ql9wWSzK8VynQ3X2Oi\nSOUIexjPtOFvKXHfk69b+Vi00FGXyu8NqlS5cvfdv5uAp1arAP5cBeOs5eW1\notuC0+X7qPFlglDycCJVZkmwLse4T70nenb/xv/jbQUEkCLhnFFquy8QF0Ov\nzDNU/3NInnXFnHDouw2hX32bSTyNERLImgIC/W3/XqrCCAwtxZWX1gFPDnQO\niupPQZZjLVV8iHj0io/DT15NSFPbm9P5U6U1n93eGUNGAnwQW1dT5CNsFPSF\nN5OxtQofQ0RXZQAzhgU2m6YTfb1GMGiZSnPPkdSWVlUDioCOaSc3beRotzqD\nQPdSPET185hiopy5o4wOcZDjO7ZGsxn+RDi2UcH5w7Aggo0GQvS+Jl6Y++a8\nDOVByO76b2V8Yw91lJu9tRxSbeWboq3U7YJ7ddeCtux6DD7gKcwJWqkb51EJ\nBcTzRPKTOed+LIHQKBNr0LDX7VmKdy9JZSblDJ3mZCX4bTlX13TAfk65nLR6\ncBhpAJOB8pMhkGnKPbBf4bX4I2jcaIid82ubzI60D3Q2hEdMfVbIxG89zQKT\nsXyJ\r\n=uUCl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDk5/mhla4ii9zz9zXdYWa+6SR5ECdfFdmY66/15ndaKgIhAM8LArGSnRnGHu/5fp+1L7k4IqoR4bHGPtk8gGbZWD2c"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.1-alpha-responsive-modal-5591.1.7_1574451135684_0.5210899498413433"},"_hasShrinkwrap":false},"3.8.1-alpha-mobile-tooltip-5599.1.14":{"name":"@crave/farmblocks-input-text","version":"3.8.1-alpha-mobile-tooltip-5599.1.14","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.1-alpha-mobile-tooltip-5599.1.14+247e4101","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"247e410184c30a178598c873ebcc7f432fbbecb5","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.1-alpha-mobile-tooltip-5599.1.14","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-EKppdwiggn8KLt9CvZYSRgwofwNduoBfrXQz4wnm2dtLFNENGyCvltMRxZRjak5aD20Nfgpl9njQuCqRzdZBjg==","shasum":"174d481c5146ec0f36aca39659d67d591b603df4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.1-alpha-mobile-tooltip-5599.1.14.tgz","fileCount":10,"unpackedSize":74974,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3VT0CRA9TVsSAnZWagAAICAP+wbyP2XZDhhAuArSUrjg\nb8XINiYPUbqeYXvx8BTp3jQM/WqMj2S59tE9ZX0O62Zunp4imjiWFyO/Deh5\nIlP4IMrt2BYPcrVpnq6lz9nQ31Jc7y5h1ZQImk6XQBty3yTNUzlmOltCKL+n\nqyT1gC7ycgVfh9hJ2F0z4IQKJh36n+njVKsxSYvog7DtbFC8EqTXH4JGyrHL\n+O1nCAwpx+lNjUfShaT4S4q73M364pNIvqX7/6p0uAHdDJIu/5rcOAJZnH8I\nBKkJq3F+6o2vfN7GWZ6BACHceR5uAFYdnIq+XZM1ftAznKc6v5l9P9kyO6l1\nQsi7prw3oRTeOEu3Izb16JPO6OwxXEnnf8FmBJbQynUqNhcbbybHp5zOD2Ud\nXGH6HbXZDfwvvcVikS3KvzyQbn7HydtK9Hcf9tspIvOFiYYgpBWN+Vh/quhr\ndzDAF75ErbmJiXFj97B8o/iYmINxyv5UOb5U3mltwo1ymjypB4S3ja30ez8b\nqqpK1IpMalVwlpkT1LjoXsNhr+WQRWFh9Er7nVnJ2QMR251STwWn+Psip0it\n3NLKmxRoDjgOdkrjvT3/QPLWyq3McnXaTMb5oBemqqzw0Tywyv1HxQOLEzIz\nSWUfpFfA1Q/9TK6dS9GWrgj74GWLYO8FiiV8wNjPpidXca+aDgFsIr7xQiJt\nbMhD\r\n=e/gG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAtoVidc6G4ZHQdwCrwrsFg3EX5HEt+i6z9RkqY+0hWgAiEA3rBXDsU4zdAptyN8SSWAur/HXHCwz5HTJuqyjemdMbY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.1-alpha-mobile-tooltip-5599.1.14_1574786292132_0.6916418066600818"},"_hasShrinkwrap":false},"3.8.1-alpha-mobile-tooltip-5602.1.9":{"name":"@crave/farmblocks-input-text","version":"3.8.1-alpha-mobile-tooltip-5602.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.1-alpha-mobile-tooltip-5602.1.9+8145c186","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"8145c186b4495f6873f557334de5e40786c2a251","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.1-alpha-mobile-tooltip-5602.1.9","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-Kd+T1crGz874yO58z97VraIzJSW5I4VoOdbDvyq5Nchky5OlTFmiG0694JHSeOPSSAQQ6F3pBRQ4ixY07kjHZQ==","shasum":"548ec5b2c7a2eb8fc82d864fc5a63447a1a83cd5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.1-alpha-mobile-tooltip-5602.1.9.tgz","fileCount":10,"unpackedSize":74972,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3VXhCRA9TVsSAnZWagAA8lgQAJHaWXFh7uNGc5qGv3jT\n03WVU+QbBqiJIRkUqINlbq70ZDUmixw36c7XahzdW1pKIlyvHMByaIwPsiHP\nKtx+eKoA4zRfqTHYjFfWe5EBnMBRNRPU3gq34npTqf/j3vMX1+G1IO0SUlTS\ndqcujbeUcYMouwPdMFC+hCJX1O69FMQ0R5Yfazdx7N1AvLzCVMhZZ6gLxkSK\nghsUQ4LtRBKtSrB0iClgy7D8RetYx15vEiAr3oCIWobpil9m6Uxuh4hsr24s\nyiFQA7gAv39ba+qfbMa2swAnKxrGx/CUznodbgHwq2rTUHC8qZyumC+GomK7\nWKcBXEL3auv8U7kVcQh9HQNjGnXVgkp+DhorLtHgw7364h6iiFBuYZe0kwn/\nzDZKs+gD6OkYZzBhWs0nm1fS8zA/QPRMGkbePKtdQaswQrQYBUC4F/xOm23M\nOD2KazBqaPAyvCdKQJAYokL81W3+W4c2LFejKET4BfMG8ofz5XqIyt9fUb3L\n+1/FCZ6o6NvPpDw4G/Kc9ww8AMEEr5kzij9Sw/kfWlXUqavt+EP72zA+VeMU\n8gHLhoJB0KR8vD35JI6HSBgkAFCFREtBXGQEyIUwDBKx51PAQA1e6WgZJ2J8\nIVy42wnDJ/zzFw7EOPEDsteAE7+u/eBPxuzvuMFPLnRp3kfWXK85LB93UfcQ\nueUT\r\n=K97w\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDyx4cVGxWNo73rLmsy3u5QUlj0JMP+cIIM6JcUmPaoNwIhANzgoBKZm+Xkq74QytPO9vBFWGpqRz3mFI585cfu/4cj"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.1-alpha-mobile-tooltip-5602.1.9_1574786529248_0.7661556957671276"},"_hasShrinkwrap":false},"3.8.1-alpha-responsive-modal-5603.1.10":{"name":"@crave/farmblocks-input-text","version":"3.8.1-alpha-responsive-modal-5603.1.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.1-alpha-responsive-modal-5603.1.10+b9a23e73","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"b9a23e73bd1aa79ffcadd8eb62a317911d61d0a8","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.1-alpha-responsive-modal-5603.1.10","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-aG41X2Kj4etuQa9LSZZJ2uZNwoQDG0lBlZYv/Pnv851cAZnpWYTRbr1cgxCNxYt1FH5oXVHtpS83GmSppLahTQ==","shasum":"44786c5d350be62b0ac4244ac52ae48c96505036","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.1-alpha-responsive-modal-5603.1.10.tgz","fileCount":10,"unpackedSize":74978,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3XM4CRA9TVsSAnZWagAAQ8AQAItqZSZGA3H7yTh/yD9N\nThatGYqDrZE1ge+HGGyqmMzd2fdwGeFU0FynD6OVYWALBbvHD+ejK39DNZw0\nEU8pNjwOQf5riRBPfvWXh3cyod46f+DNe2AywJ1NlSY4haefqHu/dG5LhJn/\n6oqnJZOZ6lvqVRavWwJ9ajSlFtds/aHzYxNLcCsDs25cBHZbh4w2SyL7K/6j\nPnsv6Z4IlrZ7vFidVfoT7WJvgtK+TbuRiKkazRl5vEpsZ5rUOAc8Io8lPgCZ\nGwPP2NWttTzImAtG3BVIhcyKSkgWZTp/aG0omUPiemcAtBv+2mdEcSNvg/v6\n0UKvwHt806Mz1wApux3xbxyD24hF53vGXyX4P+fPL9qA3OYij1A1GsnmbrTc\ne0ivbWZH4x5rgB1WW3DO1C73zeLfiRwx3iJGvmffECcoHIp5UxvAMMWod4wo\ndG12HP9r7NNA/wysP/pIH+3bb+HrCge5uF55vds/4YyO2gATB6V3RlIe28t7\nVQX3WeBLcJdDdZuU/yTtfOGa4P5zQHVzj7edY1AcGT1hpXnIJzsnyR54m9pF\nkEtBIbzTVPu2bE9sUojqZZVdvl+IH9279km84Jg/iQCwZzCKuREeJq+T7deO\ngLev+EhZEqRZINMudbiLO3TftZ5YFWVitnwKXPjiGP6+1J8nLwcr+mCMRZBG\nC5Fa\r\n=QCSL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHiQcNpLW2SmlBy5eLdU2gq2QzQ0+tED+7/V+0gQQyd+AiEAqlGtLqVXpRX1q0flrrakWAxK5qUGhWPUx7nxNGrbJBM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.1-alpha-responsive-modal-5603.1.10_1574794039519_0.9105824733272241"},"_hasShrinkwrap":false},"3.8.1-alpha-mobile-tooltip-5605.1.10":{"name":"@crave/farmblocks-input-text","version":"3.8.1-alpha-mobile-tooltip-5605.1.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.1-alpha-mobile-tooltip-5605.1.10+e925ccae","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"e925ccae14c3af3f3eb719f36da0d97d710890e6","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.1-alpha-mobile-tooltip-5605.1.10","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-WN3ZAnMDkxHUd34ngovneBeKGtBAXZMiNtCgJGXukcqsJA5W01Nw7rP8+J7aUkIKcxkvEOIfF0hMFrwKVF5kIg==","shasum":"b91abf3ed0d9a917e81d7acf336a6659b1c3f6fa","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.1-alpha-mobile-tooltip-5605.1.10.tgz","fileCount":10,"unpackedSize":74974,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3XZbCRA9TVsSAnZWagAAnOgP/3owms8TVIAieVeK7Fpl\nKd95Tp7A84bRKKoJvIvTISLu7ONLs7F4SAWURliBofw6lxcHswkPpqdKyIe5\nBHs77NV845O0QIz5gfax6bN6TyDK0Jknc21gV5gqM4Ad9vKCk3P55VnQxlmK\nmh9WvotjcB5MtDJjr/JAIknduco3x1WDu42TpKPHa5gx4/Qa+sNLpyRj1Iqe\nlohu3ehpx4NTHUcs+QNzHmCxF/Rjamcl09ZP6yRab9CLHCGBc0aGDcAoPyAw\n7xfpenYSp+R3ny2EJV3m9XYzDtUFynbV4s4/PycJXOHq1qWV4QeAr5V4fMjl\ngdHIK3AiZeBS5i6L3Le+e8bJk/eEFcXWzM6jUEzjI17vXBk6tCSm4wZQWVB5\nt8VBx8/UzzBRgcjB6ES5U/x3qXWt7eQu+PPSZOVkjFLrIuwJXahk/981ftgh\nB4sea3T0qrq6TH2cZN5PQBicGlVakNlKCupD0WYJfpLjX0B3ZWLvGek0Zebe\nK9mjuewMJj3ktdm7K6wpWSDF5jVPs0aAOoJL6MHdL9Roq/8oQ1P09hUspJyP\nJXQnQXb/MyEF4rjnsvlZUPVZTFytr/BYKUy5c1AQwsEUXi6/QHcRTtNxyd/l\nCIoaU5P+09G2cUpOsSBN3mMiljRHdfvyCLG2pZueINORF9Dsj+0Htvfl8MuT\nW6ix\r\n=Zh4Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1Dds2Yhu53D2vMGFW1e/MBnvxIAXldlf/Q4mYIO74/QIgIP2jWG9MGrHNBAhCow6Aq/vdnbT7JthqvidUJD26ruI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.1-alpha-mobile-tooltip-5605.1.10_1574794842842_0.4474325372661119"},"_hasShrinkwrap":false},"3.8.1":{"name":"@crave/farmblocks-input-text","version":"3.8.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.1","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"e70eafbdf477f897f65dc6167d3e54da59ae1fba","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-+/nMzHg8z7WwnJEY7HejOcgWAfKgU04+Hz1yJ9PEldF9gsEM03L7zm7BX4LfmjU9D71eNy3+IzNL7R7fwyFPKQ==","shasum":"487ea47c91167116126b87199cb10f20e1fd4c51","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.1.tgz","fileCount":10,"unpackedSize":75114,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3XkpCRA9TVsSAnZWagAAWUEQAJmeugy0HpUO4ZpV5qoA\nKDqWbTA22vw+xauuo20cwJQU8IxaXN6HbQHr67kqy47Lqw+qHr+QkkbvYnib\nabmVcCUUryt3ptET6rhH+Yb+HP1/L8TwP+ejQzUF8N6piV2FlsbxT3Tecb2V\nBBObLV59fZvgF9lkXaFloZsSvLC5+KagSGvCpE/QIWvbjbeTDr4uHMfYatyW\nj/Qv0p44tt5mYlbPLGOvKMl6OXiK2mAx0bwWRTxpbOkyLH+UDv38+wDiiRFj\nnZQ+6xALg4dM2+KkjW6ioz+XQGFcZiBgQljjKZE3ZJyN2ncchr8gmycv4GXl\nlusgCJ5CV0TtgMPpa6VFIyQ152v14jB0mbOCe1IVtBIrjTFLvd3pXqsC8aNZ\nwePSbpXiyUEFlw90fnRoU8ZsR0w8tntOVroY7HSFyUo+LC/9CPtBODRtuPFn\n0vTXBWUpfYOvD4lFUDESuKjWn/8T4JB2EeRgeC4d0YrVlKpcmGuAl5Ks/A3F\nYgnJcpDH3BiHUkYzmcPh5XyJ4/GT540+yoFpHO6JTweNq0KOx7Q1kD8vEmJH\nIuQJw6X5foFSE+Z9wQjiruyUJRwC0eyIfRGaWBANC8r71Db01/a+p+CBf6PT\naQ0+tkBdKlJPpCbk7OS/225ycWbDllVbNiOLtc7JcQ3PTprblDtg6cFEbU8R\nyv7C\r\n=On7t\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDcjYq6jzEP0hv73JGQU6F/C7Od+WN3BR6nuqnct/ZIGwIhAMw2Pm1qVDArxPMVS/3a9uUiNVnDeH4s6ivKCOaHmEjW"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.1_1574795560923_0.9041139277159969"},"_hasShrinkwrap":false},"3.8.2-alpha-upd-depss-5608.1.6":{"name":"@crave/farmblocks-input-text","version":"3.8.2-alpha-upd-depss-5608.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.2-alpha-upd-depss-5608.1.6+a1f79f4c","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"a1f79f4cf096d582c920bdb6bb95f55abf71c1af","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.2-alpha-upd-depss-5608.1.6","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-T7kMUjlUmOhMoWxz27R5+BY1cfUqu7EsncCc86RvBM3JDKqlu2t6sBRL1UH0qQL2J5qrYkK5V34vC/TPHWROwg==","shasum":"40f18d1dc75dfebd4fe1257cbd17879302b6f83b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.2-alpha-upd-depss-5608.1.6.tgz","fileCount":10,"unpackedSize":76633,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3pVqCRA9TVsSAnZWagAAYOEP/RId+Zcq9FM5PuW1PAHa\nq7P3DeuZCNjfPWxJi+9W+d20VGenQHL/azAuLsgIXlBx6jhtaxHsxGmPo6JN\nqVSvDErteUhQ9XE6keiCVf7N29jhlSOZFVD8PU5aUMtSyiJ9F48+nO0YCRx2\nnsHDaGTO77o7lcH4da3wpEd4vohe3hT70uQrL8C9XZUVdvlZ7JOaTN/2V3+3\n/9jJPaZkRNxHeI+e5aKOF2ixwPZwGGRTVxxehsT9L6VoSYGoWcYqQdV68yH1\n1yFjjJEaKKYMz7eMSIKsElhfaPPfImq/XAH8ftOurMhDvfnX2spgVSHsPiOw\n9vnFXdT2Fy/i25tdS2kqlP/xF5eMx6Epph1YnMB94UYYvyPWio36Nq0vMRyV\nq1fB4nL1blw2BtFt+OdRqTfwawi1DOpK3thrbo4naPNHRKD6JjtB/Y5ViqoX\nT5UZVXarUy5bd6NiUuVSnx1/S1DAcpDe7f+yhJAVTLQXChMCyj1rsXnLyIdc\nIMZxXhw4WjonrKIRmeYKp3fTzUDFzSGvt9hN7AZaALSgROA3duquSm7FhcQZ\nyya/ThvYxWC8HIcC9ZfjYJP5EgqJWeyFOOtS1SmDrB7Vb6OGGtZp6Rg+79Kr\ncaiG+UXkrbjtKSfvOL0+HHdJb/R0opy6W4zL4R+DG6znZCK6Qvfd8cq2E6Tc\nF4u4\r\n=ZF2u\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDi+WtWLq0rNweK0MOUZWQ2ghxukePMZIGfnG1+qhq8wIgZnceN/s6scMvSiqG0X7vJzMhpqqd+83zz+zzKGJGlHY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.2-alpha-upd-depss-5608.1.6_1574868329897_0.649009527677122"},"_hasShrinkwrap":false},"3.8.2-alpha-upd-depss-5616.1.19":{"name":"@crave/farmblocks-input-text","version":"3.8.2-alpha-upd-depss-5616.1.19","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.1","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"89bd7cf90d3c9049fee1c2e6b2dfe6b709fafa95","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.2-alpha-upd-depss-5616.1.19","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-2gczX9OC4GVctl8a3gurWP1/dopE7zvedQ+d8qFu2KboFnhGv7qTUU6tXIoNJZ9TWfe3SeAN3HSkCpjcKk0pWw==","shasum":"4bf2602d3dfbd16096d5a825408db3956c21ac3e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.2-alpha-upd-depss-5616.1.19.tgz","fileCount":10,"unpackedSize":76601,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3r+KCRA9TVsSAnZWagAAWk4P/iS01NiQZg5t6z+DowWg\nyJey8eTi07lLLbOy+clhSJnIOW5idVrFZ0vhccshM4tThXgneA7aIHpbA9dW\nfH/Z1x7UawyYwQ71OMI/MXpkYFsleVowWPGV5j66yvm4BsLPJp/ruH9KHlEc\nnvnOBfq7ycaHYv9Yyo3exlXMj6jzCI4yejjykriuBuaCNxYK6xHTLInX/6WU\neyJRZMok8htG92GUCKyoLxIDAF9SszDqB47N6PhhqmqOlUEG+id8XJdwpuTA\npGcSSpKL6gI0FsatwZWCIt186kDDqvVKESobo5LgaZp3EIO2SZsdwk1q1fh7\nj+6Hwb07WmS0iFUsxWR8jEMn9IirYIcQLY48MAUCzJTSG7uhi8h0FDJxOLOJ\nH3HDFx41l/i5xEJt9l8qATUhMd/qyFUrGjXlWCKCLUZyNPabcFPlX6yhHzUd\nLjdckwzk21nu205WfATIfJbtG3GALmTTdTx+lqkH3Lzo5fnPwE44DxuEJ1fe\n1lpt8GBiGZwoNEaExe9MCUPlfz5v5J/zOyxsdzGT2dvZ4K7l0iV7YWpUTVyH\n8NjQTyv+f4eTDWKz8p/M+wokERg0R/exEC6YUab0DiPUKxFfzFUYki7qIVYF\ntXLdVaH/gDE9shuUB88vEzGWP5b5Fqi0/FjoY0kooxgAYcYm/h+1LzOSMXhG\nfIVH\r\n=EqXn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDS28pdMqJLJyhz4r35DFALDxRHu0OEkopDFHx+YFvy4wIgYPmGUPICI1oc15Tka+YEduNZNTig3VyrjBIdGYx8uz4="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.2-alpha-upd-depss-5616.1.19_1574879114173_0.545321081132963"},"_hasShrinkwrap":false},"3.8.2":{"name":"@crave/farmblocks-input-text","version":"3.8.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.9.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.0","@crave/farmblocks-hoc-input":"^7.0.2","@crave/farmblocks-hoc-validation-messages":"^2.4.0","@crave/farmblocks-icon":"^0.4.0","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"6beb6f6dd146bf1ff937bab132598aef39cd1783","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.16.4/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-yV6AGDnu+d/9DW5AlHMyXYgdf4fxG3G9mleSVZhC8U+CsvW1sDjgYszDfDV69zC2B4PDc4jlhfCvb6i9cNc8Qw==","shasum":"1c32876b7f11c498e9d5d3a39a0f06f45bd77782","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.2.tgz","fileCount":10,"unpackedSize":75334,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3swLCRA9TVsSAnZWagAAGXYP/iUhbLDZh145HGoxzPYj\nCLt6H+XzhIBbuF5CwvdqlK+d+PLq46S3FBZdV9uZ4WrZkXG+O2RIOaDCo19S\nPtt/o3NuFKiMTG1MhI4USrBJQRQtsH0iJrszAw+ggz/qV+JN//ncftVOQLIZ\nQCDbSD1QiOF8e64RxFT8/3gtFCL+J/9gpDm8yJ/DZYDAUsNRjrAmJiy1E23z\nyKgzNNe3I8XYvYE9SfCMwcTEKeXakKpPAXGkwQQGJ8hx4HJiJ+ZEh7BxHEx4\n7ILRGZxnQJQ3KKlwdQCcaGAqBODzyq9BAtKrd2qmzdYk13wiGc9js1OIzaoJ\nb7IRKh5vxEwR2j+SaWIyMM7xJXgrSg5vD6jNH8IuoCAT04+IJMrynktWsX6J\ncgDikoKlEvKzD0bR21etyCgRRWqjywNm8y5kiPurhpq0EcKME2WILoz9STzk\nfuuSSi4a5Mz4akZ1H88pWd/X5JHQTmLa3tkUSXRmf8B2Yht/YXCeIN4aCQjg\nKSsv1oz8YWUbbqMbqoQg/ZAY948UuBBKOBBlWDjrQwTIYpm3KePmNzP5ta9Z\n3DPKDpWY6s/KT7WD5FFWTxg1x0nxRbQmXGQgDf0v6kkwGcvt6EHBC4m6PtYA\nPFlnK9GdXpS+GPqigPzE9Ub+8VQ3ciLcftyuEjgrkj120dGWSHw68+Ep959a\nF0pY\r\n=2PMB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDJlS+8mFG/1wJyG3nkSvFhwhelaQSKUH/K1HhPfBcHgAiEA6bflp6bCu0XpQV9yJ90OWk2H/3GoBIQ6hyYFskrKYO0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.2_1574882315186_0.03231457241681457"},"_hasShrinkwrap":false},"3.8.3":{"name":"@crave/farmblocks-input-text","version":"3.8.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.1","@crave/farmblocks-hoc-input":"^7.0.3","@crave/farmblocks-hoc-validation-messages":"^2.4.1","@crave/farmblocks-icon":"^0.4.1","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"45d82593f4597cd7418ae37fdc7d2ccf6cc2f099","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-YrHAlHLvcHcJDk/l+9Y1xbm45B7CSc9KzJWIS8MW0ayBfuFxD11cjBxAJMdyJZNpleNPq68FzjesubG5/USbow==","shasum":"0d57999ee5b991027fb2ec34e108a540f1eb1525","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.3.tgz","fileCount":10,"unpackedSize":77006,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3ty5CRA9TVsSAnZWagAAuvcP/1FuRZAVkpxux/kRUhOH\nVgtITn8DDgryolkhd2Bko/URkaLUapbomgKEM0ffnUPTEES4wgc5O7rppm9X\nUVxFueisPAq8/ieDxCv8oHtIdnJbFzyMpjX6iqQr3g6zav3nVLEBoN8qARUk\nLZ68VVeFu60HOiMue3NoTA1k9Pk0cZF1vl3v871KZKH+ZRk9+e53jaidZiVX\na4VRsCy5H9Z8qD2N0dqMOiXrxsL9tH/OXartfuf0gAxEK57XcMl+d5iXiZLe\nJa+qEwVXaPYzOHAKITf64FF4fOFpSVyKesZ58lO/4XnM3TPcqJVLGK0r6abY\nAGkHsUHeO7vpXEU2/58UsTokgT3/q/HO4nbSVW+bvTpTuuX0qiGDoSsJNgcI\n9jasuHVrwuCUNXHF/eWzOrnskO0IeNLNRcnvM/6nM6VCP4qFdXyRgo7LZJLC\nsPqPYeAH/ugH/FFQ31NjRdhdQjXrIjr3S7IUvowZwP4Y2pnCHw8SDt2DrF34\nzqjTtyZKK4TBImOFH1mh5yduNsQzuyOWpzYY+B0WVRMceSxDtwgRcbiTaPK8\nHaQMfIaC2zLnGvZDHVDmlSsGfnDJogCfysR9iLFrsNXQ9H22Rz+Irb0HjgQM\npc+XSHWsNvZu52eP9XFth5Xta+5TPKuWMA0F7jjxTpTStFqc+CCnzTylr41F\nzHpa\r\n=F328\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDudl0PXI2Ba4K3MFlk3/yuuTBMoCwpTRkQPR/DAd+vIAIgQB9MrWryQyhZrQv+14/4lqOIh2slTDCX6GzOIoLXU1U="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.3_1574886582670_0.8542442371386276"},"_hasShrinkwrap":false},"3.8.4-alpha-fix-proptype-warning-5631.1.1":{"name":"@crave/farmblocks-input-text","version":"3.8.4-alpha-fix-proptype-warning-5631.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.1","@crave/farmblocks-hoc-input":"^7.0.4-alpha-fix-proptype-warning-5631.1.1+95c37ff9","@crave/farmblocks-hoc-validation-messages":"^2.4.1","@crave/farmblocks-icon":"^0.4.1","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"95c37ff9a35c5bbecd211b6fc3a87f098dad289d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.4-alpha-fix-proptype-warning-5631.1.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-7E7cEjXvRzqqF9pJ+90vL5Bsi+408rYsKXwDT/rWyQ0LNSYVlKdcL+zhR7WK+RukgHlkwdIcbeQpMpTEEoArkg==","shasum":"cf5b897ef70e54b65d993ee6ca9caa4c2bb3a8e2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.4-alpha-fix-proptype-warning-5631.1.1.tgz","fileCount":10,"unpackedSize":77096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd4CUkCRA9TVsSAnZWagAAbZ4P/3I8SEpm6c480nWwsWp/\nwkYnUwG/colyd+q+ZEhVPZxci/KQF7hIZtSKBbBcXIrSvQFMqbaWfAbRijGI\niKrHpJDhDTx9SrIOjq6NNjyizaps562K2n9mB+HRozF/7s5k/nHDxpuuzSrZ\nOEfu+CV21H9ZtW8uwxpchgbifRDIl20p5H2Ll7i+iEXJdop2sfZ1F+KuMLs6\nLZ9818+Qht5erGUAz4cvCUH+vVpQOaW3Aghfto/BIixYU20vfecR19ik8xmS\nJUSjb4wZHBP/tZuROh6mt1i8ONji7WaIG43wxbkd+NfqM+FvXMnVqCQdBizA\ncmwnCcaIwM82X9JprQ39IPbk7pTJCEuph21FITZFSOa8tiQgSOO/i0RBSNRz\niwmgBL8Y18VxERYKJuQs/YjMeQxEcy+HgUnFObQcDzSAAIHut1vgQhsOmedo\nzMirnJxAQ3FmwhU2MJPuAcTXD+nz2VidgcXm+NYqahPnrPgnRQBw0VfA8A8l\nWpQLKAjCm7driyGvI6Ug3o4yd5ce3UdUzNQAoT5UFWtSxD7cWWBllppdZR7x\nLgwqjhOC/xQMBgJiiIb2a2L5ME4aBLqN+XxxV1gE31yBlh0CG2D5a35pY/ox\nUrbdvoRhWqqQQ8hcw0wK8q3mpF9z3xCLg/qoCoVprsw47QHXkmDzWHJ6nyTo\nedre\r\n=vSKa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHgkw9viYJ6ijSRShy81HfYo7F4YKEacDmQGswyZe7orAiA77AiHmY2ofCTfNoT2gC9PtFw0H1L+Xw8z0gHzMgzd3w=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.4-alpha-fix-proptype-warning-5631.1.1_1574970660338_0.9864808015939839"},"_hasShrinkwrap":false},"3.8.4":{"name":"@crave/farmblocks-input-text","version":"3.8.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.1","@crave/farmblocks-hoc-input":"^7.0.4","@crave/farmblocks-hoc-validation-messages":"^2.4.1","@crave/farmblocks-icon":"^0.4.1","@crave/farmblocks-theme":"^1.6.3","react-input-mask":"^2.0.2"},"gitHead":"26927977a91a31e67354c6b722a3b1a5981efa17","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-YUIR+aSBxpRChzfQFlUB8+kz9LWdvdB7rFQkT5ktcuQxulkRrr7qdv5xhXCYHepWi5L44MhKtr/W5ROYKFytOQ==","shasum":"3649ea1905edc8a10071c3a05d33d59f4d1b6869","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.4.tgz","fileCount":10,"unpackedSize":77226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd4CkMCRA9TVsSAnZWagAASZkP/0XiEftalO18hXOde3BW\nepH5TtdbbxqaetEkW8sEk/4c5Fe0dpllOPCkrcz5hWeLw86eYd1c5cmukt5b\nDbOCmuvzFh9RdZ5dPoN4/+HM95z9uo4nXVej5LRA13qVFGFBSnXe1GO9rZP9\n34BQQYSoWOWaOc0yvmpVsEqbUvlQLhAl8pKOqu5vS1iKAtVcQv6BA21duin8\ncXco6o/xLBCSORz1L2tQ9zUblvSamgK+vgpy1QeSfO2Gl7/mo6wP+I++pKWR\nNswODQMi708Bnabx4quGTjW4Dl9r/PE0QNW+DKQWZE5FRZlJOXsTgSF4XOag\n+l+j7af2o0wo+Ww6zFGfgIwnuianu0K+hGpLjLBo62xbfg/ONhZsak5NabO4\n7T0QILI8BM/kFmV3lqKVR2PPbxXIfkPDyhACO5U/VqJF7F+mAOhvGa1LAfoK\nw2Vs6IT7GDCih/bqLkYzv3MufA1iJSQJXaxhlF5LZMbot+d0QnlceiOlkrdA\ng62F6h/2A8yF2Ha0CxsjDFEubLbbGPf1Ih0ru17xzpEEcbGUpM5+YJkBmsPs\nEjDk9kOUd9nLdaxx8nOXOtuzWAfUznS/mNCWDXtNik498JDTTO0fsKwLXqdy\nmbYrTGKi5IMNqhWZk1wzIvVCPon7EkhI0FK+eLsDpHoAJFQ1G3+muPEvwuIh\n6i7N\r\n=YXgk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6s1EjSmCLrhrnNwBKpVWA48ldggeyVhv7d7fFRuJivAIhANL8FyItYMfBK1+QhBC9zuyzUYkTqaM/M/qJy9NHOKn/"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"fabricio@fabricio.org","name":"fczuardi"},{"email":"felipegameiro@gmail.com","name":"felipegameiro"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"darkerostanki@gmail.com","name":"mateus-stanki"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.4_1574971660395_0.9091636364941997"},"_hasShrinkwrap":false},"3.8.5-alpha-tangerine-5635.1.1":{"name":"@crave/farmblocks-input-text","version":"3.8.5-alpha-tangerine-5635.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.2-alpha-tangerine-5635.1.4+911bc365","@crave/farmblocks-hoc-input":"^7.0.5-alpha-tangerine-5635.1.1+911bc365","@crave/farmblocks-hoc-validation-messages":"^2.4.2-alpha-tangerine-5635.1.4+911bc365","@crave/farmblocks-icon":"^0.4.1","@crave/farmblocks-theme":"^1.6.4-alpha-tangerine-5635.1.22+911bc365","react-input-mask":"^2.0.2"},"gitHead":"911bc3651e3096adce16861d7845aa567dcb0e7c","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.5-alpha-tangerine-5635.1.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-Tg7/XdBEIDVijgWtEOE9zMk/BfeSqrbMVuUHVAD+9TPsPHT352Wjbs/xTKX/g8a0/sie4fZ7oj9Va52sME2VXg==","shasum":"e89319658043d53c5129d1fa686d88946106461b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.5-alpha-tangerine-5635.1.1.tgz","fileCount":10,"unpackedSize":77397,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5q/SCRA9TVsSAnZWagAAyBUQAId4rmWaDmLg52vmDFaD\n0tPaLEVnEgIRM6C9G91BplKyGJwfGjM0L6REV7YLeKijo7oRT+qhCpULa1+Y\n+j1rfwomi+gRy7M/ekCIPwPym1jjfioahLfOFmsJyDhw7a7Evm8NxJ3/Yj05\nObuq6Pk1knlejwJM83RsKghVcj/2g+xAcJ6IDXh6gHwVJNtU/bz7OLuHv17c\nb8H7lORVqHs/yD2jjWMotfUffL9lfY2ucje5McyRz0+PjVfApVrTTv0Q5zQe\njk6L7u/b3QWd5NO4f/+dsnHtb7joYSfCzHecvcKTTa1eJumpmoThaeMRiMFx\nIbb+fbitr5ewJ4wkLvbHqaWPZzRIJRJTCbUM77643Al7sfgqbZOTASeebLdY\nQAn+oPbiqp6kJYzTthgJxctX2cy8gVyIGNAVbmh9g0RYv0LXUWs0N1y6SQiy\nVAQUMnPmlgei3giTzClo5C0NFOfzqOXOsLWU+8dGl4ZZrHANjs+2UlPeu2in\ndCHRsB5w+Uueaa9YGjOZ8jIjkcILAQVkhbcHz4WQmqgOqtVvxaCDZCUOLXhG\nYpaRqsCDc2O9lLCZnhxfQqvkHJeNfB+IFAPIlTmk6nR0dO9j1PX2GY9Vydlw\nzQwzETnXH5dCGgDkVUskUVKVamqrGgmj8vYQ8qXbhX8fM+e6Kbce5HFXtf6b\nuE+f\r\n=NfXv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCtKVk2/8ZT2CtYFFu8PtplTyLuLyY2ccUIROosKRIi9AIhAJVDJeVACBlTA5n30J5Jj4HKgSK4AkJPe+2cmB4fgXwU"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.5-alpha-tangerine-5635.1.1_1575399377985_0.029452302639584094"},"_hasShrinkwrap":false},"3.8.5":{"name":"@crave/farmblocks-input-text","version":"3.8.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.2","@crave/farmblocks-hoc-input":"^7.0.5","@crave/farmblocks-hoc-validation-messages":"^2.4.2","@crave/farmblocks-icon":"^0.4.1","@crave/farmblocks-theme":"^1.7.0","react-input-mask":"^2.0.2"},"gitHead":"5857c6db26db5a7d3c313fda882afc5752941621","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-eI21yLNzC0hoLhOHIVu3fFDql7SBj/y0gsAQMURSafQmitgwXUoBdvzy3LnPpEzo1I/EAZMVNw7PWi9bTQUDCg==","shasum":"2b8b5d8e363a9828e721d59acad9079a7c764629","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.5.tgz","fileCount":10,"unpackedSize":77446,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5rUbCRA9TVsSAnZWagAA72oP/3Fd1AVouKGCqchILUt6\nTXEnb2xA4vS1otERPJn9cDh2oKP0yHyCVcsSJSBaurYJdJ2MYeTLQVJs44Gr\nZlOndADHV1TxdyabeCQPm6qkV/izjdGKSz9OQxXpXYYkMVEeqqKQ0n5iFmtf\nXaibAwDPGM0lQTDR7IDU4j8urbI4xX+5maIPywXpfK4uEqtInIxBh6DxC19z\nBRc8uLF1uEeBz6v9H2K37EjlmIB/4mlGX8VPYD+ijHmqju/CPGgy//dLhCvz\nRPumQz/qgnt6ZYLylfV79DMSqNOBVn1FSddTUJh9BG4gHs9voN9FP5vpcQZT\nijCAEKxZsr1FxK6EUnlRyAGTnl8mXDqS9V7OPLrBlCSpYKymgXgJ1YfNCI7I\nwwZdJWo7xtR8P02v9ylR7We/XbEDV4W4PLEg9qEiqGcUShEcZ9NzQA3uUHDO\nsznpF7F9hqtaOjzj1bdFxVAzRF3HL67CTrqgHwdszNCZXzuzxU6Y8/wqB8gt\ne/MNI4vTZ/p3JORV8/5iNBiqDZdHgpGKTFheus6rPtzV+iIzMEWPCGKDucnq\nHnM0r+rt5GcyaXYhUYLNnq2pmG6kmrkRvtmWWwA305P7blWpBf5Pmv8EH0rs\nFNxHjh1d95jGWKhnEKg3qchwGlBOt4xwnjcbYrldjTc3ew5WHreKZjunM7DV\n8TMs\r\n=ofg0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDB3xaEKGnENMTn1N8utIn27bJKYeExRep/WER8Ow1pfQIgTOj86aNtncaTNO3seNl5ttrHN9mdAAsUlnkw9yzlgCI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.5_1575400731152_0.4136452024703132"},"_hasShrinkwrap":false},"3.8.6":{"name":"@crave/farmblocks-input-text","version":"3.8.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.3","@crave/farmblocks-hoc-input":"^7.0.6","@crave/farmblocks-hoc-validation-messages":"^2.4.2","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.7.0","react-input-mask":"^2.0.2"},"gitHead":"342ad4e3c27368ca02c4ea9c55becd823e45b617","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.6","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-bFRgwseyB0rKvxteoA2qfvsOsHs4C0yXgcSW/yJf303qrobGE+KiPlxW1jj1hQYhNX2iq0x1Udj/X5HvryDHZA==","shasum":"90d6c740180442bc38f65dd881b94f0e4872e96d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.6.tgz","fileCount":10,"unpackedSize":77666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+lpOCRA9TVsSAnZWagAA6DEP+wT9zvNno/vn6PedIx9k\nmdRYqAiG3wgjM7RoqFv7AKLGceosbDoKr2SynRRbhcpMvwlk07jxxefAwwar\n0vtg+zIwRGvSg/iTfjAo9urUopUCOMesrhqNTSB9GJ1g3ppmm3X0PEoESukd\nAGq15qf3SYGHclf9dl60D5/eSOo2ZS9OhuzSWWzZ0mpXQUOCEpgf6vqiz/CR\nJujUSiipmmXJVqkq70OmjSihezfRepHQnpMkSrHMtrwNg/GmaQVSYxGQtJBt\nt8G99nejkPQ2O2ZTN3+Na1e70gEGK+0EuQHlstQ3cXf8bh9oJ51BA2aSTZU1\nceS8dm664H0QoGdIXe3JYWuXcW35hsSHHOGafW+BD4cmkjRfrsOeqBESQw0e\no7KnhqNSj+2dHcWunR16uOGGWu8ucgOjeNVO9mjOyYJtx+fDSJUNOexvitHF\nvwcGn2n9txX7Q+YxHmMLhpiLcL99q3fkS0cm3iALPfexuvqwCL6vOA5hVhKB\nyCVQ/vcH9aU2TOLmerC8ntdDL6lgxjdLzHEJq1VQ2bxlj5SOHmSmn1rz2Q0H\nYAQ4zmQ5j2QRtAYdvCak0T0Ivk8xj5fBqu83/mFvy2l2w9BNJrkVtF69uOVU\n7q3C1FGhEXTLfTxVw+SnMjzuNFnYXdmEdT5Q9OXOsydHz+6A6prmd3xjXxEc\nxWpe\r\n=lZqC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCH2BJS0wmQwB7Ov4hPhIC/iOPG7YDQMjauuIwTbYLY7oCIQD1ie8M7kMrbFL58YoIlZnoTqWqeE8Vs6qqGfqj6LOPKw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.6_1576688205234_0.9292043525284428"},"_hasShrinkwrap":false},"3.8.7-alpha-image-with-box-shadow-5646.1.2":{"name":"@crave/farmblocks-input-text","version":"3.8.7-alpha-image-with-box-shadow-5646.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.3","@crave/farmblocks-hoc-input":"^7.0.7-alpha-image-with-box-shadow-5646.1.2+aac48af0","@crave/farmblocks-hoc-validation-messages":"^2.4.3-alpha-image-with-box-shadow-5646.1.5+aac48af0","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.7.0","react-input-mask":"^2.0.2"},"gitHead":"aac48af08d12ba3c4cd38fc3d4575b5520647283","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.7-alpha-image-with-box-shadow-5646.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-A9COfT7kxwh8F3qvyqDRA3Eu6OhpqLI3XKebpz/UHnmGc+saMCZdlgWaQSDcVPtilz/wtS92eTmU2+zZCI5aaw==","shasum":"4ab3442c0c2754ba0993f0f1645c557ab8feeeee","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.7-alpha-image-with-box-shadow-5646.1.2.tgz","fileCount":10,"unpackedSize":77804,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeBk50CRA9TVsSAnZWagAA9EcP/25rcuymZu5OH2n1ueAX\n06OkR9tFfs5gdhxc4Y1p/711FTauGyoCS5o/TWJ+24PvIGnGSuoGVp+XwBUc\nhgxFqo+gwO4FRF4zgdEm+hlIPY2yG6Yxgkpm/DjkIjqpuBJSDFgz8+kqsaTG\nbr3bIEkrG1MTxxr9pzd/r7QHyq98hWfxJBjo5RDGlrrTyOrhp/2VqUkMELWS\nMpWaKHPdudqKQYiF+pkBPTZ0W+7hryX+2HHTJGDTDbtbuWAq7VuUu2D5LYdj\nLZcQbSIKBB5x/bJvtHUHmoFjzytELY65jY1aZU9Z4/QB36kF/a2j9h7WPnMx\nLbyvJCukyJ+JlaEEs8z6jYURG9Zf4EI1x/RoC6mfiRml0QsZhaNMAcwXPb0q\nhAqenO6QjFZWpJJnC1IORpItj+ntERWMMLiYg8dV7ebkG7E80zKxfftHmeyl\nGiqJMRxW5UDUEz+OjazMMnMVW0h99DAlViUfARDcfANuQEdC9NS7HuMWB7PL\ntnlrReSiz4bjwYanh0AxAm6Gezbc04fGPX8aoEEJ/FICwQIs2O0VD2JTWL3T\nUU2dJG8Ag3VXruE64koKIYtQ9fZHC/Mk2RYfsndLodkuYxLwG+ffCShmtFGT\nCZNDTwlEHHPRqp2cPU+ZtKOc1fEqKOMebXYOFPuvKb9gj/vFtwu3mbmCEeuK\nXIQ6\r\n=Kk97\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsSun0duU2BrT/rt1o0uID5ggRFq9A+s8T3ZOb7vj82AIhAPVuRYM41INx/L7TpdtNOnFrpkY+42EaOC6uTNDLvbLX"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.7-alpha-image-with-box-shadow-5646.1.2_1577471604179_0.9771863595307271"},"_hasShrinkwrap":false},"3.8.7":{"name":"@crave/farmblocks-input-text","version":"3.8.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.3","@crave/farmblocks-hoc-input":"^7.0.7","@crave/farmblocks-hoc-validation-messages":"^2.4.3","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.7.0","react-input-mask":"^2.0.2"},"gitHead":"5b1089ca8d327cb69181d786fe43fbbb8ebba65f","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-k45MgIOmE958UhYYoRquWg6f8NdlCOJ72NBqY07NsX0fqBm2+TLC0EvorntARXrbjTbWBFDvpggNO6IzJe3WiA==","shasum":"ab431cd0bb39c37172a90908430c575cf8ade477","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.7.tgz","fileCount":10,"unpackedSize":77886,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeBlIZCRA9TVsSAnZWagAAkrUQAKIA4E//YbxBy5DBn0Lk\nG6NVKbUKHAC/evSD8m+N3TzxjhU00+Jg8cgZwKFkIR6vf/xTd+I5TgKPkLJo\n7Jpr0egSEvVg29MrahqKuQGxzHXMxOePB+Nv/u2HQs8dT5Exwr11s6FTBvJy\nZDaFg5ZCWrIP+Xsuxug2FYWUuMd400i8K4NRAPr+TdhKRphjtFNfiKFEaoun\n+cY0IgFU1OUy7NFJ8Emud+R4isp+VlnesnPXbwq+4Cq6WTftj8IFuX3Sg1qw\ndZnGdIf2U2p53pOG5Sj5Hjh8IN/qxj+tS7fAhJzk3FpThEAWf2m+TETcPQjx\nYNV4BHG0cIwP4TLWxx/AEjPiCk4cXvV/VMZFLM1BxN1OafxuYpKsgECsyvMy\nuLLMjvhpV54JjFaii64stCcq3GDlKh4M5R7jUTW33w9YJNynQ1HQ1JCZKAfG\n0ESPfmiN4ktpwN+iR1OhQ2gCn2TjRJttXZMaHzK01iCWQeQIMyDNB4jFHSuL\nl5Dh2oHsZLFOq5q6fQz8sNyVebanYXY1PiK1DLj4jQbfM+1jM4RlMRQHROVU\nDz4XXGE9k/lSKHvmuaGn5h6foFg9jeOd+7YkQFcW86UuUapr9A/mmu2nlyDg\nA/aIjx6QX1iyAabIdchc0qRy2mnkkAwxMZQ3i0g2HSncIex2apSFwyBjHHlj\noqVX\r\n=QAoF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCOb5XpqsbmHSK+DRtXrA0WWZOQzHwB8j3Wgwf3/uhL5AIgTKGxhbWVnSORs+qRIctqIyeo88U1nnEVgGkrN/hR84Y="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.7_1577472537282_0.30627014830844335"},"_hasShrinkwrap":false},"3.8.8-alpha-link-fontweight-5650.1.2":{"name":"@crave/farmblocks-input-text","version":"3.8.8-alpha-link-fontweight-5650.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.3","@crave/farmblocks-hoc-input":"^7.0.8-alpha-link-fontweight-5650.1.2+1f1d2194","@crave/farmblocks-hoc-validation-messages":"^2.4.3","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.7.0","react-input-mask":"^2.0.2"},"gitHead":"1f1d2194cf9e8640f7edcc0e4ae7478547b8aea6","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.8-alpha-link-fontweight-5650.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-yR1RxcJ3sjEd3c7oF19sdnwVbz+BZzeaTgpQsTnLdCdzbrLb1LsSjoCk1Lq358ucWaKFYWiusM/fsrMI1Saofw==","shasum":"f9955537e6662dfd2178ff67abb95d77de9c1026","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.8-alpha-link-fontweight-5650.1.2.tgz","fileCount":10,"unpackedSize":77966,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeD4AVCRA9TVsSAnZWagAAlY4P/irdQE5R7H5xamCSjaU5\nkRVUaMio+mDO3nELscEQ/j/0ctLStlXPzhi2dadMgoWxqUAFmqCuxxOCO8kB\nLrc3NBydF6NZcJUpBuOG9CZSh8BRgLpnJIqpt6PiNJ33bDrRkgLFjuK5g+w2\npnNb2dDNRJRpd/0Pbk6qhfFEqxgv65tJ93RAU0IsvGDVnUZhMKZUuhDKkoia\nEr7+VvKITIEBXdOEnHDpx6ZF9KJ8Bug102xZjawU2/0v6TiVx2WCU77HmQN3\nFqTZTT8g8ILRsnMyVPp6fFjNjH3j5hhCo0KiUH+Xyfw3U+QqZoS1uDcuKTi3\noVv/BXoqDbhXsLmMUF3KYkJs7wn2ree2aEQkxUYsgtBlZsbdDnWCPOMJX9+f\nYIE+yZwGF1TUtls1FBkoChEHJ37grEbUnf5tSujeq8/kYnjlvbWTtPCcYaGl\nSn9Iweop2MPwM3Yh64HTQGe/27WJKHFnj8+dXfHY+tDjsibXPfkJ17N4fLy1\nZ8Bp3b1lKBBKS5CdaXG7m51Wt2H6elEkI9OQH101CSD+tKS2nM77ecYXKBR0\nyq4sT7XmyW+Oph9VowKAYFomUz27dOYFUuHo8vMQO0zBZ8GgJAJPJDTlYCDE\nWvFSFK6QwcCCSAyerFHfh/VbEDF8dntI/niTtgw1iMiFxKwPZrVucFa1/dWd\npafd\r\n=EKQV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfg2vwrzx5+zP1ErytmQTVGvWxFE2wvldJhu3hZmIZ5QIgAd7asnQ6iH0sCJ/aqJvLXNLIXKn+qbSazArsPByJYtw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.8-alpha-link-fontweight-5650.1.2_1578074133384_0.44618092456538405"},"_hasShrinkwrap":false},"3.8.8":{"name":"@crave/farmblocks-input-text","version":"3.8.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.3","@crave/farmblocks-hoc-input":"^7.0.8","@crave/farmblocks-hoc-validation-messages":"^2.4.3","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.7.0","react-input-mask":"^2.0.2"},"gitHead":"4599bdbc2e1dee1f2060d96b2b31fdaa025aeb49","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.8","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-QnLk6SE/DDWVNGVX9x+j9TMrtYQffvge7W96STd44MZkHVIGH4p3mDyGWpN/zf3wrn4meFm6tBXaFEZChp9Q0Q==","shasum":"18d2e0f1264ed53586c396bb4a26dd769fc2dbd0","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.8.tgz","fileCount":10,"unpackedSize":78106,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeD4nCCRA9TVsSAnZWagAAkQIQAKP1poop4BYQgZMHNXiv\nT1fLmBtlfIsU6MjsGzhMv/2MyDG3qid1Cj+10EO5cdbyrn7Q/vkUx/o+PAEf\nxb4RWjJlIph0vKEKtHGuvDUjCes0ccqevMwqOxjlfKVSnL23anVwPWpSN/eR\nlMzIMNxh6lHcuGaUUl/LZtmaISybXph5JIhqraiaM62CsvimunVVzd6WN2y+\nIwWEz0Uxfm9ctf2O2AHEQbEa702ic8EJgbr9g4wVy6wiU0SBY7NMZz1T1tkJ\nC0MgpVYlwe+z6ljYQ7JkVGA3vlK5rbQli3HQo51FEIX2fz3SV8Mw1uF/oFRL\noBFSXjYkvDwA18VfyPJbxi3Kxx3a5NXIyRDryAsJjfzhBdTQxWeJj2vch4EC\nWEI1yZuNWOZ3vSHEHuhoPDZLfXlbheEeH5PX/rsKu0HA5C/4JiLqTGGwZXwV\nNnsjjRr6jYR12x66T4A1zkSz54Z2kG9CX8/PSgkHNbAqChD8LF3bRv02G2l5\njoMS7yIz2KwsZlY+AGxNWfH26RnKAK+7+d3p3va4+hcsFiIAe+M3x3LXtpVz\nsj6yeL03C/SS/3Sk0p779xtMrnqGqwltnVqn2WIhpd54k7IBOA3ZoAhE30pT\nqXbKo1PZiubamjatxqjjfwoFrfzkF2VYCigjYP4HxOrqgabYcN5KaZyDp5UZ\n6pSV\r\n=nEZM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEEy1+QurTTW95thuUDtLmwpWSU8WGjwfuWZ6dPY0IkJAiEA+fYxXsrKLudB/yoyWkY05o3OKjXH0j6zOIZQMZftgD0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.8_1578076609866_0.8515164776038431"},"_hasShrinkwrap":false},"3.8.9-alpha-new-primary-button-colors-5656.1.2":{"name":"@crave/farmblocks-input-text","version":"3.8.9-alpha-new-primary-button-colors-5656.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.0.4-alpha-new-primary-button-colors-5656.1.8+585cd423","@crave/farmblocks-hoc-input":"^7.0.9-alpha-new-primary-button-colors-5656.1.2+585cd423","@crave/farmblocks-hoc-validation-messages":"^2.4.3","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.7.0","react-input-mask":"^2.0.2"},"gitHead":"585cd423b49d4f8cee8b02db2e7f788f0985c7ae","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.9-alpha-new-primary-button-colors-5656.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-s/CG7rCRSsMj1siRK7Q8jCvk2NEoaX9Leuf/kmgW80lnrdpeULQS5xp7Ahuf2qZnFmmhN33lF0OhhjztVYy79w==","shasum":"fb67f9397a5fff697107fbc4dfe3db02ae0b2b4f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.9-alpha-new-primary-button-colors-5656.1.2.tgz","fileCount":10,"unpackedSize":78256,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFg1pCRA9TVsSAnZWagAAJuEQAJTMdasv3DSoC73itEt9\nAMInmHEBrkrx1Tn6VjXxmMf0jDJPu3K5IOp173uSS7W0Ranj6h0lnSdiU1wE\njD5tyRLhwdd8BATZcLXDZ+Jj8vlfbcO0pkNGmvW2TPjEexl6kUYAWQ0J0+x2\nS9lzqoWTD6RFqv0HbmhqXjN4uynFguGvoBxMMR2CaalAIzmd4RqusVzETtph\nAXrY/710eBQ1UZIHgzohHih3M3FPJ6OJDfdNIg7E/npo9TxXMigFdFF61ZsR\nl/2X+gzP9yIJFaNXfW+1ysEFsCnRUY8jPG1V4Sq3+JU0Ypzf3dAnQ09XlE33\n3wVbEhxmKijk6nJtQClLtxLQkNPaktT6Lr4GSif39bqma1m3JHLogj/+k2vf\n+hT8zPaR8YJIHP6YNE2fEep0ugmW4ZVcymvFXcaWQDuidWXqphB5lT9QgOtb\n0vBy7RxX/FdfNs+w2rBlioiq/WNTe64VOeOOFxiqitz2QlaPXCn4rpsadCiN\na3OJA8fTtp2nH3a+lrFiqtVryYQ09OZ5HVMtcUvVdVTeElf4CUuT0MaSB8Jc\nJ8Ym+8BCH3o+OiQUoVuCloCT0MPRtWJ0ZT9WuhTFxZEF0WnOdbVGprCdEOb6\nxp6k1FswBbj3lpI+IY+Kbfx86e9bQyLgMB0a/GYh0qXMqzlnQXR/hDxU9Zjp\nr144\r\n=Havh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH5ysBoxOEzxI9i+N0XA9npX9x253xEon56YDxcetTqcAiEAoYlMfLQ97bGd/QL2zOMb787xEV6yZem12NZxSuBWEIo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.9-alpha-new-primary-button-colors-5656.1.2_1578503528739_0.8378201573168551"},"_hasShrinkwrap":false},"3.8.9":{"name":"@crave/farmblocks-input-text","version":"3.8.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.0","@crave/farmblocks-hoc-input":"^7.0.9","@crave/farmblocks-hoc-validation-messages":"^2.4.4","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.8.0","react-input-mask":"^2.0.2"},"gitHead":"2a1f45615786366e38edd13359913dbb6ec223ea","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.9","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-hA5W+Q/8aSA9jrxKz0VNck6Xk0nJ3SO0u4iw1SwqscNjKY4IIqvuHV5nTz6mW6en62oIpAKyGt1thbq5UE3VSA==","shasum":"965365e37576bcf50efbbcc3fa8e09adfabc18cf","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.9.tgz","fileCount":10,"unpackedSize":78326,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFhKCCRA9TVsSAnZWagAAEJcP/2vjJ2/UCVSZxHh/HjLF\nqeCXnKrXJ7LreMd/s9Jb69ahzTI3Axx2sHTC8BXdFDmqMdw+0d00VOmf8uLP\nrJfeCGSaZYVrLxpNM6s0C6BlBJmyRmkZToP9HwzkQ7XRGrfJ+7EKcQiXOV40\nioW8we0v/g8cNQSC4MmHYyIzzNbVj6trdt/jFn1ouuJrCi9g7Dx3RE0KHsTT\nQdD8+otxAYy77FzGessnR3CRWjTbfvvNmlXPtGmmkv0Wy1ndeQ/vDaInwypi\nCYnomqNK5KGNxX1vcyNjViC0purHzF9AqvMng0/vdE9Qruy9FgD2KCXMlVA5\nPuKbmBQxFspsl1Gd2nA4Z3UHVA4+CWQL3Az2TN+AdlcvAKykRVaOzdu/kziD\n99+BkSwrkl/PlnfdbZvzZgezqBPrCJ/6KurV5Vo1ftmM5o/pQcZNdPysP4m0\n0PaY3T1cPlVWPUMMJhQIB9lSaQLgKt3nFyHuyeUJxA2jUueBUZQHHYCi8A/3\nnbCK7aUV+pwd4mOI/RuP0m1b+KBmDVI7evGIFd51uto9zC4yhvpMMcEMN1+L\nhHxnzZqbHsz2gV2G03HsetIuFPnsHX1W1HXsycHPKileua9rN/XDiQZBTviR\nWqQuPGfeDKHQQ29ln8zCah4T2+50QsVdV4h9Mhs4xSZ/RqLUk0RdM3ciwv/a\ntdAi\r\n=AyOY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCNPf4u605eUZzict2UiXTnVKHU73Hakc6hJ8b5qhGPdgIhAPYfzOPzpLnc4wVpjqKA5nXRarTjFD27tx29fSNfC2tl"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.9_1578504834111_0.6850948084619126"},"_hasShrinkwrap":false},"3.8.10-alpha-input-border-radius-5660.1.2":{"name":"@crave/farmblocks-input-text","version":"3.8.10-alpha-input-border-radius-5660.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.0","@crave/farmblocks-hoc-input":"^7.0.10-alpha-input-border-radius-5660.1.2+1f57917a","@crave/farmblocks-hoc-validation-messages":"^2.4.4","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.8.0","react-input-mask":"^2.0.2"},"gitHead":"1f57917a91e9aedd59481fde68e62cbde5828d54","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.10-alpha-input-border-radius-5660.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-mkzEdXkNE7yseEM73//53NzJFZogxvsTTYrp7wRMGKyRa1C8HToovU+/9XV3X87uy2TGEeHuDlnxZKHGpecrew==","shasum":"803714996b73730de7fe51d065397ad96792e93f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.10-alpha-input-border-radius-5660.1.2.tgz","fileCount":10,"unpackedSize":78416,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeH2SHCRA9TVsSAnZWagAAuPAP/R/59NMuA/A+mRdVp5ZC\nnMsMQVrAP05f6QW5PidClUjdHDfrf5Mnmch2lZhXubboYD6WvR4X2ReLkoy+\nD8gU9UoMIFdEFb6qr2o+pxvJcm5yK7wY8dk+XojKjEjWIgdfM//lXNHBltME\nYLU7c5vCzNqCYd4CmOQHRr0L3jmMjk8C86erOKp+BzHp/E0ygRvbeU155gfy\nebAkBRH/q3iLub7tVKpf+OGTA43Y17fSUo44cvsC2XHY+RtP+om8Cagx/O/W\nOQ0bpKAY5umbOOksPLZQhrIeXz3Uh6q+mkM6j1pnVrYeZu2l5F5gnrRWZ1oO\ncsape6F4eJDf3rwKAvuTOV+FrDmUalnv/WfyNgowDBv7J9lpCa6kCpbLVqyr\n+KeeNpdQpdtGYBz8VYohxkhHhFv387+2tvAhGVCkgfntIfyqy8Mv8C2jl6H1\nJRawtcxcpHMUlapXTtZdZzqnf/+I5t8jowobnfLzfRrfpsE3LwP2Z37Vigas\nlg2Zc3Iu47Y8QZ+if082/xb6QnAucI1Doeir5RnpjyG2uGlZ1XZemmFM+YwG\nbzUXppNJRTmjrP60F3v24CaISYQmKnGGOk3nlkS0MBZ2Mk+DEIOUEU41O7fi\nfbISjklrA4toDBf6A6XzZLcc2+4SxMlel18jTXeaNFsZ0wZThxZu8giA65IM\nrAha\r\n=b34f\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHD1JY/0MMSx2RZI0DQRN8qltIy9oZJlB+kRm9YDRSBFAiEAy3wbegUrAuRUGKFgzkDwMmrXx+DTLFxxkMP5Btqx/Wg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.10-alpha-input-border-radius-5660.1.2_1579115655309_0.13092121997485684"},"_hasShrinkwrap":false},"3.8.10":{"name":"@crave/farmblocks-input-text","version":"3.8.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.0","@crave/farmblocks-hoc-input":"^7.1.0","@crave/farmblocks-hoc-validation-messages":"^2.4.4","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.8.0","react-input-mask":"^2.0.2"},"gitHead":"1015b1f0ed6fed2b385df28fab0b7c1c97020296","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.10","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-+ZstwVx42BYhXcMCUTcHgURyTav4ys6Wh1KtSYnNsF/5BSyDaInxEZeHxMvknrHY+z64/vWevFUkDULM7TpzEg==","shasum":"74cce092d5f56f0fa1edce1b8860cf73aaca7123","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.10.tgz","fileCount":10,"unpackedSize":78549,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeH2k5CRA9TVsSAnZWagAAmGQQAJzLtSGNNtGJoHS9I+MU\nVW7Xtoo9j6iO+LnJQtKBAxJ2MW77AqyC1+Q1UVZ7RrjnRmgYoUsubj/9S6H6\n9h+twn03gtXRzSd3V0f3WPZQtnI2aq1//9y+HFipMxHHgtQ1V2KgiwHeE2B0\nQZZRjaK3Jzt3eMYMRh0On4le/qMQcfixQv9ZOsP/N3F8e+0dxj+IR4x428XK\nxr3VYckh5PQKKQY+BrR0HJz0Cof8lWznZ5VRDSsOR0ujNhi9p3J6QJq0psH3\n4wC44DPN3EtX8G2nCVHvSsxsDVQWUMpRlcrAXqGbIF4jYTbWILAXFQ6+uQvN\nQpoXesyZ1IkJQhUrwvH03doBHKyrjYpYOj6byX5vT9c8+UcSguhzTBTntd2I\nImg9/75tu7MGQ0FXAVZBpEp/KO8kE5zAqPJRCgd4vYkV6QlIEUQd4r+KABB6\no46sdSNce8YLyRU+/AB94Rxf2ZXyn4aE2nIWETx0Zzk1wNmV5OZtORHzNbJ6\njsf6t58cJKzmmABmsQqoSMy9fsCxGVNqVGnVJGhvD+wjxVOwLpkXcSAdaTSR\nirh3eejj5WXN7frs+KmiF3aA4zSh6HDU1VAshSfFpMKwA/YfVI0urGka0PYM\nYsqDw7034r+NZ+EKNmt14G4QnM2GxiNKc2d2AGDjQ3Dt+2fBF2+a0uvdmvCY\nKtUZ\r\n=aXpp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICQTibyIM0FZCdlhWmWSX8fnyivYJlDMc0jDbnzEbtZcAiEAqkkFbqq5Ivw5mxKem+YBRHCP139Uyume2oLe80uC4iA="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.10_1579116857320_0.9135244733632046"},"_hasShrinkwrap":false},"3.8.11-alpha-responsive-text-5665.1.3":{"name":"@crave/farmblocks-input-text","version":"3.8.11-alpha-responsive-text-5665.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.0","@crave/farmblocks-hoc-input":"^7.1.1-alpha-responsive-text-5665.1.3+dabfc974","@crave/farmblocks-hoc-validation-messages":"^2.4.5-alpha-responsive-text-5665.1.6+dabfc974","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.8.0","react-input-mask":"^2.0.2"},"gitHead":"dabfc9745a201b94becba3917bbb61f4792ef51d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.11-alpha-responsive-text-5665.1.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-xAPBrUy9tmBNQk7nMWYFW4XYAAr9ajHeBsuxJVYbVsbX4LVD3ZK+Q9N2hX6TWTHhWkI6HonpTDDs1fZYFnxW8A==","shasum":"abb9e8dd2134f41d6ab972cc3518cf10264a96a6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.11-alpha-responsive-text-5665.1.3.tgz","fileCount":10,"unpackedSize":78669,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMEhWCRA9TVsSAnZWagAABLYP/0D1xDSIKzti7+/jrImP\nEuePGIbsJ5b9/5ScIQXj3VeCWmA6MdmEbZjOaReJZgnOH5XGgUQmDtAvXP+p\nnzQdWuefuK6u2SaKr66MnpsV+0KaOjW48qJCwY3BUZmxW+m3ic4CrfqYMIz5\nMQaYg3zbIoXCQ77rMhWzP9Ug+LzRcpYQsP38z9sKEMcpP1dP83x2PuE9mUhl\njtoiPrgtUur1jYJQaeHFWf04heamUzbfuRVA+TJQ/cX4aT8xa2+0zl96NFwz\n0EhPSGwOiMGg7RjDRHycRoViebmxu/HgTAkg7YKUzeV3Qz/c4ecIHpOXCLlf\nc1KNNBrfgWezAnSIw1I1UdVt5PCPNz1nuG8btdRarcQCFJKCEFpL2tXq7eID\nEpE0vvwMJ2E2J0Zjk2LSEEoxS/b2CHJG1uHA+WhD8p8bLH0aCsKfsVbQC19A\nbAEtebcKlKgcjlqZ1hnQfNfn0DwhnCDrQbv9iMI8DS6Lh0Yi1rhFpuWOA+rJ\nIRcjZDiHKZI/4pjUto2bWw6K9xbHCQ1/Sb9UkJg8/WFcw6HE3kJ7TY7Qic+O\nCPnCmTa+4w/sf8XBajLJzOiZdB9Rw1tqrUr+wZrfXe2+fiRrS5nlkJDcvf+6\ngkTuAZzl6Ao0ajHfvnsONeopwgmfaxY5v5JF/omrE4fXgdjWqwn7gGtaTK9M\nNIEw\r\n=PsIc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGHg2riokYgH85UeiK8lr9ZtR2wwQGDTITfTd+JCFQIeAiEAyMBt9cZXtlo93JbUsrhgYMcqPWmuiIy3SwDC/sBFXYU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.11-alpha-responsive-text-5665.1.3_1580222550203_0.5355396950076337"},"_hasShrinkwrap":false},"3.8.11":{"name":"@crave/farmblocks-input-text","version":"3.8.11","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.0","@crave/farmblocks-hoc-input":"^7.1.1","@crave/farmblocks-hoc-validation-messages":"^2.4.5","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.8.0","react-input-mask":"^2.0.2"},"gitHead":"d2798e1b3b424538dac08d6e770782fbcd636bd2","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.11","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-XNiwaC/fv0EqYoKfRG6LH3yzW/an3gkXUVQkKmdrqA69Ou2e2D3NjdQVZIg0SyqfuojW9a+1NC//FSxOI0W6hA==","shasum":"d4447076e6129cd5d32c7a76d36823fb3ff2f038","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.11.tgz","fileCount":10,"unpackedSize":78772,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMIXWCRA9TVsSAnZWagAAieEQAJws1IsrSg9HBfgIc4D9\n8zVAzON2ljpuOilGvtpq9gYLdRncr1Y1xzxoZ6pZIZzpX28+T5nHEcnLd8UT\nv6XTYTZazo/h31SJlQZw+M+xpg6N8DJAnMoAgnKgPV7Hl1bWOxLyICGdR/hg\npR1ZZqWQY6zidn7R5VYCpyuRnTSgrfvQjA3RZw1JD28bmGGtOWoZLJcZFFrR\na1c7oE0+Fe3VBE/D4Ss8imVXplCQCG37cOgXCnxjxxUV3oq7V91zPChW0k1m\nZSON1gr5NYwvDirMO0ukTac+rhSvBDHJhZpt24yxc+GWWDYvk0vQ6P2SJzqG\nFo6al9q9KvFJiFSipjYVrEZ0OsYrslc9ofK2SLI5ym1b4Pl18eKZlWtrG6uB\nN8gLonrQF0MNrzyGO3j9WgLHAaeZlYbEt6udwkeZb39x3B6jETj90BKLNjXd\nMuPxfeS76/j5xrtH56BZkT4QxUgpK1wxqR9KA5zui/xITuHv53epHW03EBcc\nBXz2tqBVr+kjzveRycThl1v7DOoJxredxMBqOd2e19lIitpfHLogLChpMhmC\nqVcNJl/aTUEUe7WM4647hsar4n0yNULkzWYASG1KcHhCZmtFzFgcXyz7yWwe\nnfl1JBO7HW3zRev9e/zjtj+gKTy7l2EyIB3Czp0kCY5wVgy9MXIx7Oh+CPPg\nK/77\r\n=wQdf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDatK2p0cZTYjBahKR7qCRDa9Q7L9spLM0crcvgC1lLVgIhAI/xXqy9N1lb1F1pCpJiB5sHBuyOOlmMrMWhAytcFSO6"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.11_1580238294165_0.42259710751844803"},"_hasShrinkwrap":false},"3.8.12-alpha-card-border-5671.1.2":{"name":"@crave/farmblocks-input-text","version":"3.8.12-alpha-card-border-5671.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.0","@crave/farmblocks-hoc-input":"^7.1.2-alpha-card-border-5671.1.2+a479d3de","@crave/farmblocks-hoc-validation-messages":"^2.4.5","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.8.0","react-input-mask":"^2.0.2"},"gitHead":"a479d3deb7e187cbc335ae99eec7ee606c7047ad","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.12-alpha-card-border-5671.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-gEdDuTu7eF1YIbrSGkBs5MwqTJescX3f7BFCnYiua3b81Zmu5qbzIbGiEwp5bp+f0cQVzswwiGemIb+qhWxi2Q==","shasum":"7dff30b1813af791b7353d9d5dd86a39dc91bb2a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.12-alpha-card-border-5671.1.2.tgz","fileCount":10,"unpackedSize":78844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeOH0jCRA9TVsSAnZWagAAEogP/2uxQdS9ydyQGbrVGwSO\n1RdXgnJwyZQdl+lLV9YIvyf5ZZz3ZkQ6I8EfTDEekBNcgfPyxRZgVOdyNGmd\nYBvq5bhmqiCdKfxE5Hyx6IkRvoakXZmk5UGRf370RBxK1O8V9WJWwa35IWSN\nvT4jmPEdsBx3hhc7YWvoP6fkvHqltNOZskoxfcwnaWRMDvgbqEbmo326ZkXZ\nTlsC4JyqCLmouSOroOD4tmc1xT15m+SuAb3CC0OjA7g+cZWQMrTzkBXQFcCR\ntKLcp+fyRaFtJ352JFrmzeYKNA5vSQU4iGyvHbT1QgQXBhEPsa+0kuK0Teol\nQwfxRVCtY7dtg28I3gG20ZkqAD8DHkz2m1nCLVUI8Y7Cb9J3Ik2uDX4fBZjr\nv6qkboyn8iSB1+Pia3Ttgs6o53WALQUvxBfbTa5ArpNq+/VewCkKgcU7QYuL\nO4gGMghNQyGcfO9Ku9WZRx4vDwTZBKc9tENJt/U+3JTFm5QtlpXdZ3skY7t/\n35IFU99R+UgRabe8LZ8X/T6YhoLSRZoaLjEAACwqTnDRACyvlcoPXqr38Z8E\n1IkEBlJoVrLHyY7EdohbasMvbfqkKXLWUBAV+lacUQIME9qbgROQSCgXlwH5\nTaI361r6VyxOt3oAOOiKQ8PUQsxGPh3lrF+8nsA3HJihIdg+bw5fCy5VLadC\n06fl\r\n=0nJA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICb6uU6rg2sJsmZxWD+VlcTczWmSP9mQBvlHtBg1bnAtAiB+PmM+MCBM0MvvEAYS0MVDGK7/awq8QLdtWMbBlrKkow=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.12-alpha-card-border-5671.1.2_1580760354753_0.4478756043746306"},"_hasShrinkwrap":false},"3.8.12-alpha-card-border-5673.1.3":{"name":"@crave/farmblocks-input-text","version":"3.8.12-alpha-card-border-5673.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.1-alpha-card-border-5673.1.9+64037a6f","@crave/farmblocks-hoc-input":"^7.1.2-alpha-card-border-5673.1.3+64037a6f","@crave/farmblocks-hoc-validation-messages":"^2.4.6-alpha-card-border-5673.1.3+64037a6f","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.8.1-alpha-card-border-5673.1.9+64037a6f","react-input-mask":"^2.0.2"},"gitHead":"64037a6f9a1396dd7835c585902e6edc164aa305","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.12-alpha-card-border-5673.1.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-/CisPzDtoLm46HdwPsr/JCCehFFM6P0yKZaYWGZvhq8kxrC5LWJC+GCxXMNqXUnVyD1SjXYcgRZeraZqjMJK/g==","shasum":"19acc1d1c84d54b9f507355a2e7b8a7d1ba9b822","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.12-alpha-card-border-5673.1.3.tgz","fileCount":10,"unpackedSize":78952,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeOXynCRA9TVsSAnZWagAAhcgP/2Ab7UNZg9F7GruSVTET\nZXfZFQxo9Cox/IKrS9EWF4CTvhAClF3/gEoB9Jp95UF2M9AuCbui0lsHezED\nkatolnnnV5G4rVIwIHPXlwK5h9xyF5AIw014H+EbAM6LInU7tpkGlsBMPSCP\n5n7AjWgN8Do0J/TbGH1TOxsg4NcsozRCJEq+9NyivaWZA8km9qJXTyK66WkN\nx79vnDWBLgUe1Sikf902RXulhOelSFzCHRLGVRtiFZTpxk8nVQZg5ce3x+FR\nKdYhyh7CwwtMCeWlqlSHC3CVcxH67ptM7tuZ8EtB4q6Yeo/VK9pkQrJ/PxIg\nprqw/TJO6BuEz5qedCglG+wfjEcC5JY7HjN1sSNIO3vgPR1933gAbcz43/q2\nlv+2sL+dSK+kqQOuWkcMmNQTKrRHIJnMxuXsM5V3OwZLML67x/oIbKWgmHCv\nlkpn8vb/ix9eBOBRm44DimWTCXEzGnVwoEvyTtTpteamVntvGJfYiWLZFTN7\n7MiXEdpAkLdqnObCjS+VTnLBok5PmWAY9AVhI/ZWjpiAaU7dhFVaYefmLjhM\nDp5Ovizh1PH6nfWOsq5En4fmxwaQFKrNpf5lPj8rOBlrotmCXpy7zLum/haG\nx2iClqjE6lKYq3Oiu0h0/tQkaPC2uRtUOlRM08O370gvjiX9T4Z1cpn1QKtT\npxGD\r\n=7SQg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCsju/SQSUjoOLqn+l0xhRF2wGlmaT9bKXHWfngy94SgwIgZazTjU98uwNOH2MF3e+EYs+9sOpQ0vOoxyA7R8aIWJY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.12-alpha-card-border-5673.1.3_1580825767144_0.45177302462915914"},"_hasShrinkwrap":false},"3.8.12":{"name":"@crave/farmblocks-input-text","version":"3.8.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.1","@crave/farmblocks-hoc-input":"^7.1.2","@crave/farmblocks-hoc-validation-messages":"^2.4.6","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"bb3f171a3b5b9fcecba102f5c5529ac1334537f8","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.12","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-jZJ+8u0qnDF1vClgPkfFFuJ/anV9hrU9jiRgrH9jTo8qh09VhOapMMMYHFukbrHW+QJrCbDwIPtI8GfP2d6rkw==","shasum":"cecfacf33f7f64f5ab8ae3dda8ad8f0ab4bd0e39","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.12.tgz","fileCount":10,"unpackedSize":78995,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeOahyCRA9TVsSAnZWagAAkBgP/A8wr1Q4Ilmt9M8f12t6\naLihvx0wBO3mDJrAqGTN5MNK82FsAvJCwdF2K57kWy73O+mrnl+Hvb3G+ljE\nR3xLWhDlXc9Q2+yDNZCdpDW6a5rHgsCIfzkjwJAYbHzoyLPGqfBH/0Mt4aM8\nOLdncDZRhgqe0mOqlkZRHZb67iYQSamTK2OhiGKEIxLc2vQW34oUYZIoXzL/\nn2zbKbDf8ijyU6Fxq/cKCn6j6r36nbAe072RzQGFZhc9G9qtxPxnMSfTc1Jc\nYcbG3KwWMov9xvy+an/Hfikh5+kFHi61LyYQtitC1PESWpKnbygG/vGQgiGg\nCSo0/ROkEwX1qG+dNpybifU4ykTkyDLF4v1npcc45WbuRERFukzwPwp8chX1\n3s9lLq3KXWrwsER4uXQNAHinOgl33ZwadPlPYalammG5TZp5NlvtIdCXimHq\nYghEgUR5/siu5+acUVlRHD82xCFhp9mqpfwxK69CgEMWkeU+b5dvrxBD1X08\n+Atx5HDSlIt3jBg7giIfbP+mVhj/mj2NSw/FxOOpH1EnAlfHBnYtwAb5aPlS\njWjzRxlUghIpQPYMFGM15TX0sZLxkpkeXwkE9jv3FL0klRqP6zJcflla9YHC\nD16NZitZZf1ro3JwSZKNrFKOVtoZM4tmY6JHYUH/He/R7mzjqoI8/+p56Dpq\nQbeb\r\n=bcfn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0BFIxY53QFVF0T6SkNLeSrBzooFNDCWQ+W2X7yJxPpQIgK1m/O9tGG2Dj/TqTJsrhxUUpnO6KZrLO5PyCpN19ovI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.12_1580836977918_0.034134265583871004"},"_hasShrinkwrap":false},"3.8.13-alpha-textarea-focus-5684.1.2":{"name":"@crave/farmblocks-input-text","version":"3.8.13-alpha-textarea-focus-5684.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.1","@crave/farmblocks-hoc-input":"^7.1.3-alpha-textarea-focus-5684.1.2+1e31a97d","@crave/farmblocks-hoc-validation-messages":"^2.4.6","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"1e31a97da0202ec0a28ad0ee75ff3b6f605bff37","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.13-alpha-textarea-focus-5684.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-W4nxG/wciTi9v5FA8ZMALyibaOh5ej1l/kF8zcLYnQyKnuByvQNCqVxRl9U0RpTZN2NB967Ft1nb3/8T8kuxVg==","shasum":"4a3a72537a15b784dce574437d8b935d68d02173","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.13-alpha-textarea-focus-5684.1.2.tgz","fileCount":10,"unpackedSize":79073,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeWCwqCRA9TVsSAnZWagAAtO8P/AyJ668kbqniC73slQSd\nqDsK15AseHXkXaNyfG/VDyiTaKSPbYbV7AIa2FZdPsbgVKnPuICDR8V1j/5A\n8k3Si+sRNlSTG9HwAJenVVZFRWa8T1KjcmlrVQw5LnTJ7KYjhe1zTjM5fOEQ\nY5WugCBZchRaq2bv2InfjiUm2LkgHgG/jCeLvKeJHQ1lsAVDa3JIWTyL9miT\n2tNgXKmJOLdmCzwAT1JKFwT/ekGuZl8brbqL56JMHER0C1Zlj8fUd1MC8Ncs\nLN3Grkp/oE0+rma7ADKH3r1Swl+NzdrJoQ+HCH3uvL4omXU6XWV8hCu/xB5Q\nnVavjl3/DecGv9MJ8Rx3fb3x2Zj2arbW5+0jHJlnDzBwm0l+GnSG374l0REN\nfcVV//6udnQRLh9zU9G7KPxsW8uuDCLoRaSNtK5piszG0j5o3nKze4i5pdxj\nkNsrbD52s+RN9zLheYxv06q5wpDTjTCkMpQnqWYbWYlRDeP+SG8pnOa4ngpE\nkDa9oDNcXeyH41+6p9HgASZbKxR+xg9m/ZoHVWxfVbRg7yK/5Y8jhvGSMPkS\n+yfI4p+e5UjYrIj7f0EUaJxw98Y6zE0p0unm+nzUqWUIAAI2cZaUoLsslFgW\n3xXvOfpnWKtuFZRShNwI6e9pFfJLEXOesDOjUvpGkIpJm2zNNELidykg5EF+\nghlo\r\n=rUBU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFV3LPZFPOYKOUUENKYFg0oM8nimFa5efqoYbgW+Ly2FAiEAlOeE2o28xm5VyAanmKnsxR4GwfGSuB37H9ICMa9gUr0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.13-alpha-textarea-focus-5684.1.2_1582836777739_0.6920923100647747"},"_hasShrinkwrap":false},"3.8.13":{"name":"@crave/farmblocks-input-text","version":"3.8.13","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.12.0","recompose":"^0.30.0","styled-components":"^4.3.2"},"dependencies":{"@crave/farmblocks-button":"^8.1.1","@crave/farmblocks-hoc-input":"^7.1.3","@crave/farmblocks-hoc-validation-messages":"^2.4.6","@crave/farmblocks-icon":"^0.5.0","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"7fd599e24bf507106040b78e8ea6f63939a11594","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.13","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.19.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-9RuNw1EWIHHCIqcyeERP+Zrdo9myqjaKm6G4npE2RH53oAZex2MqyoyFIFW1cIhoeBLkQWPn0HSqenTi/U1boQ==","shasum":"9674cc649f3e06f2773b408b1515d55ccc4f7a8b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.13.tgz","fileCount":10,"unpackedSize":79218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeWPyFCRA9TVsSAnZWagAAcHMP/3VetDhJlJ7Ik+fxvG3c\npHEi/6jPfgl1JNj5eTuD4c66NFIuAMi2/sNQgumwHF2bu2KOyNUm9vzb1cFD\nPI5FOW1lnXLG0eoUcKEnGhZpeE9/2zokE/DXd4hVPmPOHZ2ft2aJ5ov2GP5m\nk+AZqhDzkXbtpn+w1gKGrY+iyhlUVPOS0eXyJYN8wzd1h/mS/OTNws7RS4Us\nUwY90tWCoI27YS/K8xjfb4wOmnYKuG/rXhPf+erNtD6lUF7XH6O2dsLP5wCJ\nKEqDcgpIOKucuzFi0FL35kXSyVOKZ4iLT2IFnO8UAqxxUqI+D2fCeLdDg3Rw\n7LQZcC/1meQr07gjyzhCLv2XtByy2JXymABicuLn2h1NvdlhT8Q6Te/iqdry\n80vtaf/GkDH+nldWyyzJ+NvzSFCHTWgDi2gHYseIknSdEuunxuTQU8kcZfwH\nh9vZ1QBF3bwfJbx8M5qvCIWcmYoAu0QhGygUpGZSR0/cDip+fQ5N+HKxrevI\nZX0h+qP5rih/pcev8ouvBvKiQ1bh00uoouP/VtwCPTwcKJh2crbz8H//kVR8\nAj+SWsYFZXIUa4fru/BeokBmsh56Dz5CUoYp3CI9BBJQAgRHcV8+IvCDiDRA\nbc5Q1J+4mNRA0h8UJqRT4tSiSgWjpjVkXd+e5XqyyJ7brjku0oNH2DMPo0MA\nuFLe\r\n=v7qZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH2Gj9yUlqrcb+GriA/+QuobveseubpNHi5ohp+3Whd6AiAKT5grNZz8PU49Y01zsw6i/1be/xYXW2zIkExIogbU1g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.13_1582890116593_0.8714088105525404"},"_hasShrinkwrap":false},"3.8.14-alpha-upd-dep-280220-5690.1.25":{"name":"@crave/farmblocks-input-text","version":"3.8.14-alpha-upd-dep-280220-5690.1.25","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.2-alpha-upd-dep-280220-5690.1.28+a8cea52a","@crave/farmblocks-hoc-input":"^7.1.4-alpha-upd-dep-280220-5690.1.25+a8cea52a","@crave/farmblocks-hoc-validation-messages":"^2.4.7-alpha-upd-dep-280220-5690.1.28+a8cea52a","@crave/farmblocks-icon":"^0.5.1-alpha-upd-dep-280220-5690.1.46+a8cea52a","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"a8cea52aabb860ab7cb09fc73c87568bdf11ccde","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.14-alpha-upd-dep-280220-5690.1.25","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-64laGw0moHFk1QYTYxLCA4oN54TF0f6SLvdgNU9/myWqAa2IowFhSH9HgY/qDFF9gm6Sop3Gm8/5gTHUuI7BDw==","shasum":"0456cea7ec2cae00c40a3d736e3e47f785cf10b4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.14-alpha-upd-dep-280220-5690.1.25.tgz","fileCount":10,"unpackedSize":79521,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYVmtCRA9TVsSAnZWagAAlUYP/Rbw5xbJ1FxjmrmJlMmd\nYwjjeArl33WazQYIkdHlYEGG0wQIIx3UZ2q4HUOhdt2fY/04zEej4oI38jo0\nR57JnTKHSay5W1jZrLxIDkUZp6YYstWUIJJ/rtizqEU2EOF4Z+kC18iEtBi/\npj/A83xl7tble2la9nK1549BRVEQx77EpoPZiwsUmkllea4IJVJ3sO8bbAB/\nDeIkPfvtoAMFAEa8fYqTWPTlOuo8L4GiTXSRAORACi8VTGQ3UNP/j/egtNYV\nFaFcbb64ZMp7557VuPs7glwHgKBnVK1+cooatqrS+CmzOPxT7sVJaQOPAlL6\nB+jmlNwdKiX5hgtf51opRiTFjHfcoJitlXuo0P2yncwpBFu7opZtAGonANeX\nR0KSCmCDcl0IQBCnZvrVuPS6oOVyuSWQ7AzP9KEigA6wHGHX9/4RNPNs0ix3\ncqrWcxmbuWJiJV3+5jMDvIADo8rCcaay9WALKIpsd/r/ahKFaIz0tGyIhyjx\nc6OdAaw4W1JuIwTkMnCSTRurHGW2We/Pbo04xOL143Y8Hr2uTQ2fx0eaTxkC\njWRPK7ZbG7iT7W2WPECkANjMMA+wOZ9qDgSlC6YiUzgpJ44RCI4qJtJ16Vnh\ne791vi0D2ZSgq+am/P80O/izeXPwhAcBrLplOZfYIjVfBxC5ftfLZttTNNHV\n6m3H\r\n=/kA7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDC2x7rnZQz3pQxDVOX/7x5SkoOwp3Jzk0sPc1loRpDvAIhALdK+huNg5u1IkRdYaS9ZnVaqiLCebOpBa5yNlAAZDEz"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.14-alpha-upd-dep-280220-5690.1.25_1583438253113_0.019886534717868498"},"_hasShrinkwrap":false},"3.8.14":{"name":"@crave/farmblocks-input-text","version":"3.8.14","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.2","@crave/farmblocks-hoc-input":"^7.1.4","@crave/farmblocks-hoc-validation-messages":"^2.4.7","@crave/farmblocks-icon":"^0.5.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"6f23e8cd16a268a0f14d582e9880bc591d758995","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.14","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-LxRgvI87R+uul5rNEcxlbjo9w+Rpg+z3ckTUWWL7DTXhZkBVbvTvRNtTyqKGcCkDJfMdO3kvOOTbwPIXatuVNg==","shasum":"1f7d4b045d2912053c90b72222bc4bde09e8cfda","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.14.tgz","fileCount":10,"unpackedSize":79544,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYm6qCRA9TVsSAnZWagAApN8P/RxSshT4tC/IZ/3omxqV\nKMB38k3QsmudLsm5aL95zZ82QayAL9dW28Frxi1EBfoujJyY6rd1C+KpWdFJ\nwNNduJglZQqil1iyYDX40BJTyvVH7KayXTMFK6IdFEy7uG6FaEJGHPv1leD4\n+O8wR90S7YeychkJMdfSeRllARq/QehWRGXU3m9RQgF6HhU9WgbekslSCn6H\n/Zplp7vbaGe/oCIWTE012edHMLWOP7KaHywh4heuFSIq1BXa6TZMG3Yu5bFC\nOJ5Vaa4R/9lHnxooG/bi34z9fIUh9izHWU16kiPNYLTVneI/b3lN8ilGLEx5\nF/UWOyQdWBf7anj9fHwpvcctjinm+m6Ee3HBZBtGmUMj9V0MFXvH/ChiWb0j\nRRk5+aS9nQnS1jTn11l+vrKSqw9P5s06RPdUwT/hVKgWiFjsXrDKKuycyLhJ\n/yJx5tNejPWp/RAQbyPya1S9VmkfebKug5171LlQord2RaZNiMrfnFwWo04y\nrk7z962fssaP51zc0+07zr/U5k9Du6Ht34eFYWDEa4nPxLpOGLEia9d9Ienw\n2eb+9PhlxCohI0BL3ZY70x1yFWAVt/Q3JlJfNGBEeE5HJBFLrodrsD9ssS2F\ncMjTL+HEFBiH2qvawHgDyvo0w2h2+2tYElL7EZaHgTRZIHb42pt35OE/q9z2\nY033\r\n=Jo+d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnAYw8Q351uqRIMpNxs9ESY/YSAYaNJKWMK9np53LVSgIhAKey6xF8V6wJcjLUsBGIShSkBd9kPZ9BbHZzxBDnkD2q"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.14_1583509162112_0.13847336009735"},"_hasShrinkwrap":false},"3.8.15":{"name":"@crave/farmblocks-input-text","version":"3.8.15","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.3","@crave/farmblocks-hoc-input":"^7.1.5","@crave/farmblocks-hoc-validation-messages":"^2.4.7","@crave/farmblocks-icon":"^0.6.0","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"06d6db2af409b4d1c42e1c3a038aa5bdc9fc5654","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.15","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-j2FHM7ehMc4nptOhzRFKPaAcv1bhJG4Ri0IqlhgxfAMiHh0ruP6y2++gcvM7m6uHYjvSY1cyGyegio6hRECpvQ==","shasum":"0b17c0aea38082ff5ad1ae26c76ba84ce4873066","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.15.tgz","fileCount":10,"unpackedSize":79767,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevDqlCRA9TVsSAnZWagAA0DsQAI12VAkRR5XP57sFiAhv\njdC3KJTVql11X7pkecSQxMaHwm1O7HKdjEaEU8ix2xlubLLeTxvh80NjVZWd\n+svFvS50qJDNObxzcPOM9wlj27Yx8YwYsk4bSKdzWx+cKzPh9musq0DuDntG\n9Dc03qKnyh0gCHe7AeO9ecX6qNR4BWuYmrLK6JJwn4z1IItpSeRfskilwfZh\nbc4a24QFHjSgrAPKDN4f6fC3e56hv2Rs2lKsMLeQxd6a5UZHCGT/Oo9fFCg/\nWBfIc+yoirJdjdIIAg1ONNPWfB8lQWG9Vz2Egz7f9kml4fI840gCIz/QDPMl\nnEPJtgn+mQD5cAd1ZbEd2EeCCQRAzue4+BuS/dG1ra0miazz6an450NxcEtO\n05KsegcsJGWSghywCaXUvpgXrFKEHKkPYIi3Frx9vcA2n7I/YuhcGc0FsInq\n3bt9bnBFSKUVANsjfoYT67/BR4yq/XGzTU5IDQ4YMkMTyo0AMLGPT11t302N\ncu76exz3t26h4sZ1NOqGLLXMdfJugEPTMwMHHWvk+wShv1LHm8YUE0boJga+\nRCZcvI7VGofetXhbSy8ubZSPRQBeKz5VEi+VQxhGHssyuixocRj/JTNRFUAI\noZMY4Qo40/MeETcziBAJ/EUkhnjftdthsPC3LHAYcCkROlqLY7yAcDMJz54R\nho2N\r\n=oAXX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEokHqXCbkD+5IkFIxCuGYFK+N0L0Yg/Yldz+8O2/OHKAiEApZmHOphSYk4ZAqGRhO50+OYS9UlENWF414pmW7h/ng0="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.15_1589394084566_0.2848735521293624"},"_hasShrinkwrap":false},"3.8.16":{"name":"@crave/farmblocks-input-text","version":"3.8.16","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.6","@crave/farmblocks-hoc-validation-messages":"^2.4.7","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"f53cbec934d2c236ef9e41ce2e51d2bdf37e2914","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.16","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-RIMrqlT/jEWX0mVrE3vUB+ImD71dYzL97wvwF6iIL/odCzbFRf3PU3bCc2Rb5NUgopRaern19w4EHzUFX1p29Q==","shasum":"c70c80e0aa167f7260b1b26edf6cc2fc7e3e7fd5","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.16.tgz","fileCount":10,"unpackedSize":79990,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevVZ2CRA9TVsSAnZWagAAL4UP/0IU8E3ftj2OshtqBy09\no+CqlYPRRK2E+joRkHDbLHpZ+14gPN01rN7ZsduNo/seCE1wzIJPKd6EZlAX\ns66wikgxKDydbBTUHGEQ26vW7xmKv2nphhv0HXayf4dOdzhz/zl9c+Heiypn\niisWKLijaafxFXgjC5Ve11dzPX52x44FC1lcQq3gfHUNNVJ9QU3BkF3kpOxy\nr/1G61YQU2nRKBjkMD4am6GsDHKZ8cBADvwwXWjGc9NQqqOhWFcY98XTYOo/\n5glNGTLEdpaCDtv5bfgd/kQXzHSIBFa5tqGoIY1OS3uGSSxEAW7QSA1TM52k\nryCS0rINBVYGh/2SoA5t+JM2owm28xcj3gEL0IOMW1Kh2k4FvGYZv4zx9NcE\nmmOHPyf6wBSXGpBYQoDBIU8Pqje8C/yAQ/bUip9D11HQN/IQck1IWemC0UD8\nU/0ijgEQTF0RbE5KvAdaWTuzOk78DO38CVWeFpNzFfjGRjmSON5uHZIOyRrE\n0oQrGmTiPOaiHFCMo4YAJzgYjltCH3B5pWXWd7ga7sBmSz+WEkelRWnnVlD3\nd4niDSkOHyGcYFKWstBZ26v9hJtwSN4Kz83l2yKcFAgMp8hzNbuwbxQwN2xk\nKMDw6KCKPy8xbiy77ojP7N5k1CZAspAxPUQHS3wa1Fzbq7pYK8nzIitGRvB5\nxa/b\r\n=BEhk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9dY2rBIVXgvMH4NSW2YLtxuTTOmYEbyxw0kOYNUqTkwIgeQc+Skww/XYtt8+uTMb3lRN1izl+KtfNzipCrnB92bY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.16_1589466741691_0.5451150554580859"},"_hasShrinkwrap":false},"3.8.17-alpha-new-label-5742.1.5":{"name":"@crave/farmblocks-input-text","version":"3.8.17-alpha-new-label-5742.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.7-alpha-new-label-5742.1.5+868553f6","@crave/farmblocks-hoc-validation-messages":"^2.4.8-alpha-new-label-5742.1.14+868553f6","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"868553f65440a9c443059bc2eb14ea8d033c4fdb","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.17-alpha-new-label-5742.1.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-WF7akPBchRf619gRaTWIno9zC8Oq4g8a0UYToRVpF+yV/OE1qTcdNqklmCP6QcVROCgrU5KbwG9Y0vCz56WLjw==","shasum":"39d149cfa7d0297f99488a5b0a485558c8ce6aba","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.17-alpha-new-label-5742.1.5.tgz","fileCount":10,"unpackedSize":80093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7RNRCRA9TVsSAnZWagAAB68P/jI5Jmq+Xq+KxCYn9dMC\n2AHQmrpFs16Hw48SduJegnZWEoHYqJSVzpHmOy/vG/7e2lrPrVrZvIHUMrPp\nHnVLJDTV5H3mg9MlWxWIFwi1avdcuRTcssCu7d4gX6F3oswyqVDOQ6V79K+j\n6UI9Z/hjVW/bozI/CRzzKLc+OJZ0K6dBPJFsGKDgJU832qHH2pTwn18dfo8s\nXV2qiGOqC5rNE9NvFBBkgcuDlHWbS7/Tv1fF6jZTgSp8khjq2N5cjwISEIPI\nVH6tcP2nzdHzEPtdOeoqRg+gCL79bSdZeAIx8qnvWdVTiEsQZGuA8Am+qMnB\nUqkNP4SQrySv0wM56ApcpiyPA4hoH5xR/4p0SlrTgscx9PPuaFskjjo4z4er\nvJmEOUDtF+pvz3nqRki+zcO6hcSZRpFrhMkHKdl+Vh5Xi/jS/Kr6NSfOgcoP\nN4zRs/hka+OuhTQKfIm6btQwjzeZNyPgmjx6odgP2Jnzfxnm2EwTTvgRUr1J\nqHF1T3UUTNuW9TNDIDMXt+FiJUoMVw/dX6Lmm6si+0mjqKLCl+VUXd3jbtF0\nDqAm/skpmzLErrJOWIuhfGAlLUH6GWuOFrcdJZIAFdOdCR+namogRjYtOqcK\naLhPeunPKkR7sVdn2lktPg78XI7OjwIFPgcBFTEwYtWnlAFYgfERpk9PSU/3\nQJVe\r\n=0SG/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFsUzgA4F1bfQlpwAKobkT0GGFwQm5ItJeD+kmAuRsb+AiBBFFbYPblIs5uYRyI6TPkQwiwM6U1GjE3JJ8hL9AcL9A=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.17-alpha-new-label-5742.1.5_1592595280544_0.5888377880486664"},"_hasShrinkwrap":false},"3.8.17-alpha-redesign-form-fields-5751.1.9":{"name":"@crave/farmblocks-input-text","version":"3.8.17-alpha-redesign-form-fields-5751.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.7-alpha-redesign-form-fields-5751.1.9+460347c0","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"460347c067a56a7bd7f316c45b5fa96edb5ede83","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.17-alpha-redesign-form-fields-5751.1.9","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-vPT/yrahOMNyHZre5uc52AMV/VF+3EArVaUy5Y3EF1v7yk1varZikdFtYW7BewnhPqQGkwce4L6jabdP6ruSgw==","shasum":"92a5404f4c9656473500d482281b81b2c4b35063","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.17-alpha-redesign-form-fields-5751.1.9.tgz","fileCount":10,"unpackedSize":79638,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8g2fCRA9TVsSAnZWagAAzIIQAJBXQvfKF9FhTRZTSS1j\nZZKRycpTlkFany4YZgV/+nSXs7FgvVMg3Is+ivrbhDVyDwbeTXhXMCG5VSOG\nwL/fH2zn0H/d7XzjaUwZAKW+hptM9UtdA4EFgcwPJMZwYe1MRJpkkCHNr6Iv\niizGY7+fx4jBRXudPe75Cizb+PfBkwDfS8vk1oIM8/FnJXqoVIq2pSafGftu\nP0y36xy+vfsLn16jAKlYZYjMtTmRzwxwUpxoZpoqcs+xOJg87jNHYL+Xg96t\nxYDja+PQ3sIu3sbhaMnW24cJpdyfbSp8UK8OrrKl6cTcbbOXOjE0nhMHAS1b\n0oAyUt0dTDLK1JD4xj9uc8yawuvUEohruJh7l/YBYmvX2M1TMiK2kBduIYSR\nW5nnwaSAh3Qi7vuWbbqwmEZQm6LzJKfV2PNkdVeAS3jDZAArgTNZo71YyqgL\np2Sr9h0xRTGpfwmv5aSRdy34wGCixFgxAq2O0HzmH8Eegg+fZ/eM1vdu39lk\nwpOqC85TYgTmYun6kB3w8it+9W6CQ9Rf090ZnahNFlR3U6AH18+gOMxU/Md1\nxJPNEhupHltbdChyJCYCb5mKfA3au/anbn0XmnKiS3hZqyRedqSL/cPZZX59\naZRIM1ypdPQgNTHKi9vydnZvSGH3/0rF+LH8aMfpkZ3+yHLqpb3HZvPFG5zD\nR3y7\r\n=O43B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFWvCB5jdtAEBiqhY4llXQN6ups+VXG2gR/WhUDjZdwqAiA+v6Gln/owiZ+ApTIiA7AKxI0yySPaZOQZBhRHt4XAMw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.17-alpha-redesign-form-fields-5751.1.9_1592921502522_0.48399018555462514"},"_hasShrinkwrap":false},"3.8.17-alpha-redesign-form-fields-5753.1.9":{"name":"@crave/farmblocks-input-text","version":"3.8.17-alpha-redesign-form-fields-5753.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.7-alpha-redesign-form-fields-5753.1.9+10dfe5cc","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"10dfe5ccb18dc462ac1834b6b52a31c88bd79167","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.17-alpha-redesign-form-fields-5753.1.9","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-w92C+zWmBU0neJIT3SvA/9XbktQKOruO0ZgWuWhvYcBw1Ah/XhpubnzkuxmD1qRJA4ly60y6ssC2sK5+jVF83g==","shasum":"8fa24b0a0d928cee4a8617333434108dd99a1a32","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.17-alpha-redesign-form-fields-5753.1.9.tgz","fileCount":10,"unpackedSize":79638,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8hcXCRA9TVsSAnZWagAA1gAP/jAcHgsLZL/aeGdoz9N+\nWQ1PpalrP6MCDOHf69rLrl6rJNsWOzbKQQpdG5uAfYa1FMqqQ2YJmzb0H01L\nWk4zaIkh8dkHnNy7OgV3i9lkmNzD+mi9jtFzGvzoEt2+Ji3yCCPCekvfByT2\n3vkDntCizG6iu68KxNjCw5N0OgOmSZgElnamcwRykr3nyIixM5Vszcri2I0l\nTBFi72bQJhmF/Myo4p2lLZovwUgc1dtBsheHYOZF1FXwBY2juRPYDSDT41ov\nuyPYXEv9sq4EUcG/HZeFBJJKz2yiZpo+j2aPHKmI674mRvS58Na07qgqEos2\nDhsd94UEGIyp1hYdM7rGFt5wBVUrLFdkCyEmgBgDRHEe7Pzctuw9EbCZM6GG\nx9xuCgtTrpUJch3pIG0z5sCRWEhkwoI2Te+GVLgypwWRkkuJB3ZNF7ojq4GZ\ngTT6AjE+Bm/jtnIs9gwio71RAgs8XtPuD2Y7Kfr3Egp4Rkn66GqHLfwPNKOD\ns9Z03nitiHjooKTMZDiw+sIj0nlihc3ADQ5s2AARHvk+FzsVu3KFnJTxDtxZ\nJN/dFhYyTTYS2GZvSE7t+xemgK3fI/BJJPQLt/tsdcSqek8k1VchqqtuZQtb\ngYHVB7byt7XMQwJyZTTBb1dCFKz+ndE3/2KluZlgWS7jz0muZBrzGl0Wk54g\njtdb\r\n=L13S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7mDERFkxcHs6WJW5FYKNLxxu0P7GjCGiEotgwSjyU/QIgW1hfve9wHHYcbrk7/OkXBvumKeYtDk88k/FBXQkqgLw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.17-alpha-redesign-form-fields-5753.1.9_1592923926667_0.9327812900173904"},"_hasShrinkwrap":false},"3.8.17-alpha-new-label-5761.1.7":{"name":"@crave/farmblocks-input-text","version":"3.8.17-alpha-new-label-5761.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.7-alpha-new-label-5761.1.7+e56806ae","@crave/farmblocks-hoc-validation-messages":"^2.4.7","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"e56806aee96aaa5c0eeb5dea6dbcb4d0c455afc3","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.17-alpha-new-label-5761.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-Nv6bJG3aftSQl+7up9iCa6VDOl8aArOUpahfJpU/vYMnm5PRrUSDCGer4AwlUSVbzIs/MKJBDnMd61DqR+U3zQ==","shasum":"b702a30051365e1d0ce56ee6ebfe6f9d5791ae37","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.17-alpha-new-label-5761.1.7.tgz","fileCount":10,"unpackedSize":80058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe85PhCRA9TVsSAnZWagAAtzoP/jR6bBFPXuJ6R2vnoNpC\nuoRn+IFAfzKLPhK8x/ym5hkZ8QivHBCMGQyESg5CCfeFV8t3Hwfzdl7zaven\ngN4n+x55tyoWIcZyJk03bSJPY80q7ayl868xAIcHU/VTo9coLI110rT/dXcj\njlZ9RCBvmWhVMB0T3y5gDJqcM1cgUyZRvPI5OTPBL3yRhLh9f5iKCOF4pIYe\nRbkOkdvOBWmmIgeY60f0Ag6BdnkQ89qkGPC0BxvKjqhTVl1JRPFJUhGayEAm\nm1FQw/ZLgn4IBYlwptMUP8p2MRFYxagx7oi/2XBQpf54DNvxI0hbSDwVl27m\nc8owiSyprtq+7QVDLrVHz9yuGektRXeVgDumiefC+DZ6Fj/3/9UiIMiPhnBn\nnruj2uKN2gQZALaFE4dKaDN4oR4bHzRj7mTXPvX1Jfnpszxo4vBFH+hN/Tuk\nHEHYu0l7uMpwaKpw9SWarOjbn7+ZkZcRS71QO3h2JZbcwM9P5d/olE0VOe0D\nY0z29mUwIBuN+XY84MxDFb9OoirT1q6xZZubGlrUuUkvf/6Z4eQRC1ozdl4S\nExffNGO6aDHqFkhxnbVxLMJWIkDqOGG4fTo04iQpntmPBNxtwttv+ImMK2ii\n34ecvxWbA/OH0F/xSPHNCgVylmO8gcmnuc9W5Tl2E+t3VLctB4eXDTWIDZwL\nmNK8\r\n=Q3Ej\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHi3a/5LJsxFTi4h37+YYOPcrcpJXx4lXura0yMCkrs1AiAZXtrYqpBcbH9uiyO/wZQsC6i7qsDlg9rJfEqnw47qDg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.17-alpha-new-label-5761.1.7_1593021409023_0.630712207374807"},"_hasShrinkwrap":false},"3.8.17-alpha-new-label-5765.1.5":{"name":"@crave/farmblocks-input-text","version":"3.8.17-alpha-new-label-5765.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.7-alpha-new-label-5765.1.5+17a98f6f","@crave/farmblocks-hoc-validation-messages":"^2.4.8-alpha-new-label-5765.1.14+17a98f6f","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"17a98f6fca5cbf7510f25f734e2d9310344f8d78","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.17-alpha-new-label-5765.1.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-tYHCHTUV/VBSwIRXgbWFc7Ul+Y33J0eHiErdRiBawIzEW9qvjCuURhDIzDPv/hsocAZwLPcLOA45QmekHg47xw==","shasum":"810e2bd5adc342be0b9442b0aaf0b7506ff6d57f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.17-alpha-new-label-5765.1.5.tgz","fileCount":10,"unpackedSize":80093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9JqNCRA9TVsSAnZWagAA1LkQAIbVlzRnHmTWDvUMQ3l0\n6QlolfzvALuxgM9BKAQnxTk3TAEsVLVdZCkzS5QCSKixm5F4QOvKLYtxXVgi\no5SmiLLfVDSugcdrQYl723vfxAu2fNMaRS/36x8OgeHZ9jLCRu2s/fmS0e76\n+a5aMKGXhPW8eIe4Qs0TaNAW/ae+1QvKJ+HMLqGksOkBSjijCWmA1OUdmxH2\nJtpNm+ugBm7hSnNE4dWNmw47lt7HkB3+aCGFlyZmjO7JZmSdQUBp5SGUun7C\nwzRL8YnQO6InPMN4pKIO9dm1nMYAcZ1lbDyNFczauUInY0g25BzY23Mbn/3p\nHj7icQTcP3EXhfwH/LrSjkUIYWa6bIYo4RJKGa0L+Z9802QFuHPQz0LQ0BSm\nrKH7O3bfLcMTO/zniIdSsgavlqf2AvmpNVG2oq4Oda9wxCaZ0TUYtY5K1bj8\nAG+yjBFZzCtXbzqqq5nJBm9+9yBaiooVf6ON81Wl71iJStUol+OQUkgN6WiH\nB4/5H8Y4WXDid29cUg2VWlWTVCdPcmV3OhJBur2j8UJunJIwkU8KZuz7IdjV\n/IMXsQSDCAtCoZfVePgqugx0Au0d+Hd1EbmHr5fpVXK3/thrENsogxdPCl42\n1mvl47PM4AbgD5MueEEjRy3T+pc5J/dRJE9e8Pz/2vn/4li6ourvGwFRPIoM\nJ7Fs\r\n=HjL8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGFNw3Ez7wlg/AyPlnNYaerKk1F2UT2U1iuHnZKn16CcAiBcU29CEMuemPBwZtM3h4kHaPRMtw5nhPUhg4t+FHkswA=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.17-alpha-new-label-5765.1.5_1593088652810_0.6944215157339944"},"_hasShrinkwrap":false},"3.8.17":{"name":"@crave/farmblocks-input-text","version":"3.8.17","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.7","@crave/farmblocks-hoc-validation-messages":"^2.4.8","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"900495453780bf6dabe00c745a05f0839c0a7b54","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.8.17","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-yk8QX+BPoipthv+fPVS00wUWQxY/fDvGcrrdWyWa2Kw68Q7Eu8ymcWma4sW8I2L3VUICPtJzbyysUvlQT+rv5A==","shasum":"a6ef670be475fb3a300e6b54b4d5217abaf4fd80","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.17.tgz","fileCount":10,"unpackedSize":80213,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9MhgCRA9TVsSAnZWagAAidAP/2b6WgVLQvryA0LhYnY8\nzryWe7xZJiKsKyrAcFP/o7IjthVuaIzj8bPIGfcHJtpyTRRREWcvXZHD0s5I\nmK06UVgmmoGc6PpQw4+0H7iy2UBoEf/MzUsinzYQGogLNy6Av6NYGfYHm85B\n6EC5YoG/71a/Mtt56DmyR7HNieA3QqFpzHNUjCTBCJR0Dfx6Ew4u3H3/1lGG\nyhob6D6FGgTmfch6S0BKqhmGy1BkId+W74h3k7qJwDMlDXZAFphGS3xy3CkC\n32gwqzZD33jV9/fcHGK9TnYeheA8R1N3/H9f7pUGQjFMvGamyQ0NldT/FFwC\nK/UoDA9ehoDYGTwrjL6YtHsKMpzHfbU8iAbxI3ix8F3WdkCxoGekcUWflzA1\n3bew+2hVObcLi14kYjoBLgi8hHoXb2rNckElBSxtUe+7YDmeTDTP99gshBNQ\nPPAMwzgKsXjii3qArcH5oFKL5PfhIjWDhmZ9I/SF7MX6YLAbWAvPTHHOIZQt\nWga7iC6LqU5KAeA3IETPDFfKiruqjm9RwCaFlnf22HiGg5J8wKP1vJF6FwPc\nB8nE0zjHQUKKD6ocrUSGK64nctxRHVf4f2c8sUKWLfVZeMXESUo2O9nqOVJJ\nL0QQJR8OqEVF5lpAwOdiE6IliKnHV6HNFe+BwNViCqbgHRg+j+ZRQRHnyc04\nRWqy\r\n=vEiQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlYitCdx6b9sdCIVOhQmajYq2Fuo7eIRopPAvftCrwRgIhAO2+Kusb0SCOA3Zg4yeRAXUidb7sLh0fyeUVFzWaybnA"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.17_1593100381210_0.48470741936907147"},"_hasShrinkwrap":false},"3.8.17-alpha-redesign-form-fields-5772.1.8":{"name":"@crave/farmblocks-input-text","version":"3.8.17-alpha-redesign-form-fields-5772.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.7-alpha-redesign-form-fields-5772.1.8+c522bb30","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"c522bb3090eae71437fc84d99184b006288bfa06","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.17-alpha-redesign-form-fields-5772.1.8","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-WAHxhRo7RquaKIO/ndkEdq7QI8bUB99oR8Z5CdIjE0iAzOQ8Nd5wbfSfW+pcAlzvlz2f7+C8mX2XdBK5H6cQFg==","shasum":"7e64fea94a8df789eab3f7e92c90e06cf0ae3380","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.17-alpha-redesign-form-fields-5772.1.8.tgz","fileCount":10,"unpackedSize":79638,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9NByCRA9TVsSAnZWagAAL7wP/R8/7XyY72NncZEvDygv\ngr3NbZ7G9eRjSscLnhpV7PI09aqCRxRWgL3r6cD206WKePBXMuFuQnkph1gF\nKDF4TWdkxCdmZ3R5DmNw2xTM8rchJjsY4NEyiRMTQphHSJOlpn9+Ehd1oZMW\n2BhiRB4EdUHsq5ciyVKydtmtCRl7JatapvYT4L5+mqL5JbL72/JxR0jR8L7R\nnzL3gqo7tf3AdEf3PGHIosCDY2cUOqbr+2lW2sxKgrabchFLrBaJSXRSnVEc\n5uRH8n7JCPZ29tTbqEQsTFurj88NoPEJVDBUnKw1Iy7Q2G5DHrucHQrPONFZ\n6Fro84jg6qUKVYsJseBos9mlgWELoPS6tLSFFdtbjLO6LwDJzFE2CfrVVlxm\n7y2rxAiVQXXyD5PZ2fBb60+8OjtUvdwq/ksttbkTSzK5lorN8OIGzt+hqYao\nJ8wwTpcYACC94ZfUSZHBDcEEQru4O/UCW0UWef96yJzDdWRKnoxpqyGrID7m\neT6t69wmIGd10LcoAVZ/Cjg94FFI52cJctWM4p98jiIHeomMmteoU77Xuey0\nqVygB64PDTWi+vsD6jvvz+DKkjqsWqD4qTvJd82F4xQHnBdwEdTq3IFyO9Mi\nBDqOIrP7iLn1yJEYpzC9vhha2J76g8sdyIJeuEDvneW0D7Se9qG++l/WzPc4\nR0lN\r\n=6/jz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXmxxvnQzH7B1Rwi5UiYSwr278VFPlDPJqRAMLNKI/WwIgYadMO3ApUe2SJekGqdztZuDRuqP8xabgJkz4Pmtnlhc="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.17-alpha-redesign-form-fields-5772.1.8_1593102450114_0.5093586158521799"},"_hasShrinkwrap":false},"3.8.18-alpha-redesign-form-fields-5774.1.4":{"name":"@crave/farmblocks-input-text","version":"3.8.18-alpha-redesign-form-fields-5774.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.8-alpha-redesign-form-fields-5774.1.4+c0a0dfc0","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"c0a0dfc0987d8ce29815780d78fc283480e297df","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.18-alpha-redesign-form-fields-5774.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-4UT1qB414nHhWVETiVghSPNDRaWus+U3TEuUoPn4yjrh5FKIf8fZZ/B4rQ31hSflhAa74kySb9qIj9N3jl1hQQ==","shasum":"c3434f6a183a8f98e13131628766b4c37fdad7f4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.18-alpha-redesign-form-fields-5774.1.4.tgz","fileCount":10,"unpackedSize":79861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9NF2CRA9TVsSAnZWagAANPYP/iRIP4Ga9e/u3a05FYpS\ncok0MPLX0zmJ+Iy/ZnVPSYg2KxQv5VWf8bmrmrw7nD4Q/rZ/Reniz5ehVNlb\nVrTo2BeV3E3+z/K4KZXbptB2xQ34SAnAGK0z4C4g2p5APabPrUhWI6bBh2Ux\nBpo++Zx8ezDU1Vi0ofpX6exlQ9dqq3RDke/7GPPQu00ABG5LM5RlKWxtd7pg\nVAtjKRGS0kb3/wam2xmYHsNbMvwz3YGg9M7DUak5yhsChqdPjHIHM6KMtTFO\nHUiFBnwAJwLzDhqHxfvZbbNaizzGIpI89LO985JVP1i0Ub6QsmnY3FUrLXzl\nfORbLYetOPs7/Q+moY+DkhFemQzluwJpVOtD0U1ADv+m9XYJotJAq4Q1X/YF\nePFuJ/PHzh2iI5hqOIjz9pkKa6zP/An6UX6XNNfnF8t5gz4pTKLWB8gG8Aer\nC2a/hMdZ5Fi4kxsFHOPe2mzdiq+I0ENLcmWLKi/GnjzXSiMy3k+f8AzhwelP\nAlhlC2ETvYdGSiyhGHQX7sztryWjpCkKX3htd9jZVSEP0fsIbWooPDfTuD2V\nVDJPztpQ7mCoOHqJzhHELXWWngJJ92IVWh05B4PZFIVVE+59vc9YW8ergPfC\nB3Iodel+Z5t9vBiHS1qpCcTHYrAduJ9s8aik+wQlfysOMEXMZ3J1mVHYUlIq\nXbRc\r\n=C90Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCNWHS7iRmDKq4TfSLnYXlcSRcRLPWE4l+rkwVLrr9VEQIgBjBVlxive7tH3yzGWq4Ftr3KIOwTRr8KO0Ingc5h/Pw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.18-alpha-redesign-form-fields-5774.1.4_1593102710291_0.8742990473067822"},"_hasShrinkwrap":false},"3.8.18-alpha-redesign-form-fields-5775.1.6":{"name":"@crave/farmblocks-input-text","version":"3.8.18-alpha-redesign-form-fields-5775.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.8-alpha-redesign-form-fields-5775.1.6+4fcbb59c","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"4fcbb59c5ad9d1844f18b102efa792f409ed61d5","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.18-alpha-redesign-form-fields-5775.1.6","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-W57y7g3+QNiV+7Lj3NnmanugbPmvxEKIxqUiCWmHT77VSF/rMvX7iWMUvuMTMBoMCtlgT/Y+3sew2lfIFPvYlQ==","shasum":"45612596978a22a7084d3ad45d50b62691d465f2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.18-alpha-redesign-form-fields-5775.1.6.tgz","fileCount":10,"unpackedSize":79861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9NNHCRA9TVsSAnZWagAAKuMP/RIcjXFELcnmaRcjYqMZ\nxZqCEsprOvWc4fRjLkrgxjX2sy5yDrP+99EDPgKBqflWszYwR3Tq2ULYTrmk\nLpIZHVI6NdXPb6cg7wLkjL6g0CLDIwjbwPIGSQ0HC0fFa2wwUD2aVEiSh6B3\n6AnxCVTMXe3JKtHRUr0a97G0DW8hkeLQe3BLSN2wSQpGCyW8MbvXalKKzfgu\nzFVyJJrKJGylw2rbfYloGQqQNk2avl2z0htCm/iZunZs85B/cxqm2xgQbgrw\nioIt97Yij6kKNWxjBgCPG2vTsDniXGtt+qyOyMdrrNrGPevyJvtg5uzUmpLZ\nVzuAOiI7BOrMlNcPaSzudAT0YydPIO4yN+4gYmdW+1nb4Cc02p89FTPwihCQ\nl1DaPt66aiL2C1s5iDk3NTpkd4u/QozzqtzcmxmNJrNLIVPFjjF0c9dHN2e/\nU1KMpFBbPk2pdgUHrQ0/CH7itzYD0eDOE1hPbE6eTbmWwnpMAbYMkbwvZUr4\nG0N4ygua7k0LInsiYOyfPyH/YPeWY0NoOW3DFf6OPYZaQVZP5GXo7WhOw2Hr\nwhiClBrIfe4bVE+qp2Tr8eWpWmDrkHpJoMd53KOeZcxV521JweU7PWdGJaOZ\ndAjDtEYszYW4An2zeNmO2GwtjcmtOK65LOXmN+lLjwfRKHj0+wYToOBJh9bR\nQj2I\r\n=bwHa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFverJ4c2ssyb6gGpc1UU1yJKEar0nWKhbrAN55oMcXpAiEAiofBb+L4i/4anIV6O7fCwL+RKQDvRFHNrjowa2VvKrg="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.18-alpha-redesign-form-fields-5775.1.6_1593103175168_0.6118030509647623"},"_hasShrinkwrap":false},"3.8.18-alpha-redesign-form-fields-5777.1.6":{"name":"@crave/farmblocks-input-text","version":"3.8.18-alpha-redesign-form-fields-5777.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.8-alpha-redesign-form-fields-5777.1.6+49c322e7","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"49c322e77dd1c883b4ef795fedbfb875750e861c","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.18-alpha-redesign-form-fields-5777.1.6","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-wjkDSc+XQeZKQLXCIrpmr/dNP98/4vBY+G8BfsuTAXPrzWU3YH75vhxPk9++W+EDSa0NPaJQsGMgin7+mBoKdQ==","shasum":"080abc1d7bb6c6f83103c70e4ca7e1f6ffeac1a2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.18-alpha-redesign-form-fields-5777.1.6.tgz","fileCount":10,"unpackedSize":79861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9NXrCRA9TVsSAnZWagAAuQoP/iZbHL0v7CGb2mJm3v7Q\n44NZtD3TUEctizEHnKlOesmTUQut3a97bYpulX6Fk2g1bumlUh5COneCnHCx\ng1tD4pItJuhMeFZUCv3MeXSicUAJRwCA11cm61uOXU8bDogsSP9kge1pmbTv\nP4ZfT64PCtNof2QWp8yQLwba0dbhANAr+OQyet8ZSaFnUfl5ygt4MKG8qSxi\nf7mx2stLE/qQ3Fei+0HuU/obCn55oKoZDxpKOmkPOITq+/ZZXSBYs25Wvis0\nIRQZev2ji6540YnXmG1kRInO9idELJu+S5TeIOVPPZqVPRpgcnb92z2bPLPO\nnTc0IeG3BnOyLfOPh+yPOQq6IaJcar3b7FmroxeNFtoGjcmbGTIvDynSyyx6\nSf1V73Smj0APod8NFlowPDp0++r2xKDjBODs4wBs3UXYBMHSaPyPxBE1PKL6\naBHihFTXpBkZ2Z/HdKCAbDb0OAhHpqQ/IjTE+3mJ6h1ygwZWcmhxhHlWXA0r\nKZzJKbK7htzuGAMlVFYSvqDmH5OxyHS/o7CZC0Tz+cABHt2U4kTIM6LUOQrg\n7P7sQYtP8jt6y7IUhLxREqVZIFkv0oZmg2VHvEry7HASBmn7GLIa3JRcI/A4\nnF1FuF9G1YjkjtmSa9aF7RU4jhXXvPzovgGGkxvO7n9rkILQFnC3f72YKkHa\n1k9i\r\n=icex\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDC38D7TcSlk4MOi8kqUdyaa7pZHifO7MLiioLK/zKTeAiEA1HIgHFuJLOe0C3YzYN/ohHO5A33xOZq9gGp46/f7U9M="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.18-alpha-redesign-form-fields-5777.1.6_1593103850973_0.7769906996086211"},"_hasShrinkwrap":false},"3.8.18-alpha-redesign-form-fields-5789.1.7":{"name":"@crave/farmblocks-input-text","version":"3.8.18-alpha-redesign-form-fields-5789.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.1.8-alpha-redesign-form-fields-5789.1.7+6153dd6c","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"6153dd6c550579eda90f7dbb7495b3b7355cab31","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.8.18-alpha-redesign-form-fields-5789.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-d1wihrLF+FAg3BdvNWE/xGp+3GAF6nJX8AUnmS83LhqNfYEi0xd9MB/H4mK4N3BzZfzADOyU+UN24wef2zI0EQ==","shasum":"a204c9ccbe3b2f8c5eb8c76c5d0b3e52fbedd93b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.8.18-alpha-redesign-form-fields-5789.1.7.tgz","fileCount":10,"unpackedSize":79861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+0YlCRA9TVsSAnZWagAAKt0P/2bfaX4xf9puHMwplVBK\nVoBx3fRgzOqNtAGwmZrHg+jECsrU+J07Tcn9TUD5KhZSED/4xvACitJpCQiw\n/x43/J8jWb+dF+ck/MC9+aos7/VLwd3jms7PKRHU1EWhseiBNxOSi+w8SwBp\nLebB4yTAM2uklK4ZELfGYxG11Nv+ROY3mZb50UVNHSqydtlhh02eoZw9mj8J\noEDQWq8eNgFt4FBzQ61BR3iadlouu9hRL83YkSVwiYIq7pYhRDB75mdiHWz6\nej3jnM0hufI2EVlW0hQLhN0yRwwu7JBViu7KIy0lrw7s44W+1y6RFhtWHnGs\nXmvjeX9UZCnf7QDtYCw7+K7ZXg0xXru665rjOASA8KV6sC4Tc47FKdKMx0UC\n1vzynMc59kasZOMzsKdZUGllMPfcDox4S44eFIy8L9vTdMTus4AwycZBXIYR\n4XXjhggoN+BppKbSAvIRRFnoDLrYulWbPRemengzRN2zw8qw0oGkKf2X/ita\nMpNsODU8+Dfp5wkEY6psmUaFwMwIvboRBq++kEr6D8ZDh4TJZe6cyT2j9iHK\nyCorHhy6hdIXoyDsQZo5DMKcC+NdR2vt5MAPXzLo0T2L+aP684OtLdK8qbIC\niEfeAFUuqWDGYxgjNDIoiPibAPxL0XEA4+Dc6cU3iO5Yy0MVgEZcS9+sXxDF\ns2ks\r\n=fLEX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBJ+Skh4+y2DFvRnJtQeJ2YvBC0pbvt7MaC4sPoVsm8lAiEArhZFqXAdUNndudLi7t2rAy9ReCJxWpXt9ig2ExsGLNM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.8.18-alpha-redesign-form-fields-5789.1.7_1593525796895_0.43805764272069214"},"_hasShrinkwrap":false},"3.9.0":{"name":"@crave/farmblocks-input-text","version":"3.9.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.4","@crave/farmblocks-hoc-input":"^7.2.0","@crave/farmblocks-icon":"^0.6.1","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"a63e7c1f90592b684fc83fe6b721c2b5231037d5","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.9.0","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-t7widyoDm9lOeQ5qMOW80aM1xdMJ2YwfKprYz1u83ncaiQJpb6fQ9PFyXV2E8Q6ysKB79vDdDs0qRm6u3/KLNQ==","shasum":"218a0ab8dc92f0174257a0a170ad0a93e1d77dcb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.0.tgz","fileCount":10,"unpackedSize":80103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+0f8CRA9TVsSAnZWagAASy0P/3TWD3KjFbjOy+owCVaa\nIc/d+6Igd15H62iehWX13Xov7FZBKOkdQU7RrYeagnep9npSkcH2HO41qsiB\nvFcenXNEVD5AFwWgwfYJ9VxPVDA/HrnxtgMGnFBh0OxsCRYqoPhKq9MvRZ9c\nztQdoHkJ7szn3BYRUv2pETW9HkcsPBEm7ShHqhSIudluXvth5DDX4Muig+ja\nVksrteVPVXL1sLXKi0EwTOo5F5IrOb/ujhbDGqWlSZ91r4pkrHxxNxRf+wsd\n6DBRAjCMLsdf5WwRtmOD87fOKYDDUTMvUrIH4fKP2IJNTS2Oe2v/yj453PKd\ncGAFtvxV+Xza++OpWUn/nKaAv6UK5KqBEpaZSF9/Es8mh761/oAXZzFZLeGi\nE4xVN8GL2QZN8jhYlgNu/qrrRSFxsLcO2OXH7LlRq+uZ1alTn+EW9xdLeX4c\nVnM/CYGzr49VXrH9PEy+IOkJp07w1KZN3CWF+v21lwsok2QDd8Rxlomf3v3B\nBifJU+OAVR9Dt9ktmXIxKMOxlj7ihklDQ98hloP58gw9XNX9ODcxG7USS9iL\njHUoNvLJ06nJ75a7k38q29HQtmcP4ZrAkSUDFbBuNZoaa6Xi0kmoFO6g4Ipb\nI7rtc15h2UTGZSnFtCyLvArgb2uvs6EXCZ+1BLiOTUVlN6VQqd7IPm2UCSfI\nzfqg\r\n=Ox6E\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/RIxSFzVPx9fLlBdc84fkzlmtjT7fy7045oEQfrHRCwIgBTtt0qdALuABkOqGCpoVggqxaw6zzCkIJY8YYfPn9EM="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.0_1593526267707_0.03686730101350877"},"_hasShrinkwrap":false},"3.9.1-alpha-dropdown-button-props-5805.1.3":{"name":"@crave/farmblocks-input-text","version":"3.9.1-alpha-dropdown-button-props-5805.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.5-alpha-dropdown-button-props-5805.1.15+087d20d5","@crave/farmblocks-hoc-input":"^7.2.1-alpha-dropdown-button-props-5805.1.3+087d20d5","@crave/farmblocks-icon":"^0.6.2-alpha-dropdown-button-props-5805.1.15+087d20d5","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"087d20d5ca67da637b28d58fb92e302aa787a58b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.1-alpha-dropdown-button-props-5805.1.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-P1pjoo6z4gp/kG8F5ZyspeX6GeiPoMRK/Mp7Bok7+he6TDulz+nnBqnoxWpMZsS8UcyeR4xl60ij5j2aPiEOiw==","shasum":"d8e61a531b7406519773011aef51995ec979ce10","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.1-alpha-dropdown-button-props-5805.1.3.tgz","fileCount":10,"unpackedSize":80289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfBJPDCRA9TVsSAnZWagAAx1YQAKJ8t8lH1gKwGuNZrT7u\nB8pNyQLyCm8X4cLchwdbGCrUAEN6Zq/FkqoBP8l/tiFI2Wtp/w4pc46/ehxm\n5G80Caiudv/MMXbK/ZKuHes4CtyUtvp0vZEhrJfC0ixr9R6Qo30Df6JYehwm\nhhtKV5MGAthodbhmXP5MSUq0NRWQjcKpFOpOjh8Xxy7hWTPUUNgb6NT0czai\nI+Vb0RKJ+mjg4haS+nmdxzyDNrDb95pP/i+b1BfdvHYqtdfLDSgRN9cf3ayD\nTVp0lDa7OD0HyjIggl6cIIOtKwdGhgBtvVyk8S9mzSvew3fo0Zg1omsHM/aC\nBhBMzTTGrx10EVfrQytGnWpj/Ky9VPIko5/ujneKOxel/iHOAOZuAvXL2wuw\nsgHaVKgiOVQKvTCG1wxiyagO7TKMLnI0d9BJ0wez5FD4AIi1Dj5ZjG5fkPRj\nvyiN1jRCZKpBMj0OYDGt1Fg4Gn80RF5TQrmPb6Uzc91M9KsKqZ4IgQ3vgo0+\nNIfJLTNW2soPVW87wj4tcHojzoG9lnjVwSjaxCoBRkHI2/725TKBGhahLO5I\n6Lmci0U6fkQj44smOgK83/vS66EL2y0uNS9A14MAyV5XOmi1N8SH714s0Jst\nWDWkLn/vIizv/2MoY+7fSYIc7icTjC0sEqonV3o4SZY1eqi7csxdVB+iX2GZ\nwaaf\r\n=FlIs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGtVNyAEHdeHBwaiNs/MaxeeQvqzqns45atMRJIbaTGvAiEAkP9cJimBCcjmW01M/xV1/BVJlvcd0xnvd52EAYxotdU="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.1-alpha-dropdown-button-props-5805.1.3_1594135491066_0.8568515516042801"},"_hasShrinkwrap":false},"3.9.1":{"name":"@crave/farmblocks-input-text","version":"3.9.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.5","@crave/farmblocks-hoc-input":"^7.2.1","@crave/farmblocks-icon":"^0.7.0","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"29ab4fc429ced210f74af9f5f1c06a8ac3d33af9","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@3.9.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-laddq+Tf70yENiDiz6fQxNoHCq9A8dsSUuLa2QdNTgwx9npU0mgIso7bCa97iqxOM0kJLhIHwi3QyQ8z1Oa9YQ==","shasum":"0729db8e9b100081d0599909fe88922e00063d03","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.1.tgz","fileCount":10,"unpackedSize":80323,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfBbDlCRA9TVsSAnZWagAApUMP/jwJl7O+1v+whskOl1Yn\nwIdnUo6L13TSsVBXFA+fleoNqib0LwnQqp3YoERJ0+RZPNTEcM717y6qDxvk\nU/IGI2uLayFIWZRvVq0YkrYJJlpyE4UZLDHuyIyP1c6P6VWoIxzH5QK+hxHF\n09CzMiiORL2ZiKKRa/PdWgp+3eyjnsfIbq0xcW0KW3i9QWU6Iz51aF+9MyjO\nyNkMONU2yqEHfX7OFRNQOdahTj5REZx1d3eVAxogR/HotVZ62w9JHgbR+oy0\ni8rmPbOzfhXjE8jv4QrVNXWSdtrKnDzDC1AfbcjA9pq/qNeYwbXaVoedhJi/\ndagV1Mkb+Ko/bCaPH7oCEuhl2vQwvwOUdW5BYY8a9J9wprJHaGxvFm3aVR7g\nQbHwJTELNr7r5CRXJITlNL9KL10aDflWWmhWTOCU12DCNhUkGQah2Y76o5qt\n7Y10q+Ouqz3dlrGGIQlMt/B8StzvkU3Z7j0VvkU8eg14Q9WrFATkj5iaHAdp\n1vWnpEa7X0ziaQk0KioHmTbRFRUtqplnTi5YUsApPeB5IS05KFn8uxpl8z9n\n+T16b09BoHYQn6chWfGGf0Mw2Q7KixtpUwK5jjzGHMdDLc1Boch8u2i710BV\nS8t/ywEro767afcU+9WhCx51jtMewUmpyDjUHD93KvTEVNEGvVrC+OM14VF+\n+DJt\r\n=VJoU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHxuRl2iJRwFQaGL2eb2BYxtxFGNYq9THLO/6qqLdRSYAiEAtLeGv6Wx/4o4dUa/zE9aE8PhZrnc0gkrKA4ZPVj+nEs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.1_1594208485111_0.9839793689655043"},"_hasShrinkwrap":false},"3.9.2-alpha-fix-icons-react-import-5808.1.2":{"name":"@crave/farmblocks-input-text","version":"3.9.2-alpha-fix-icons-react-import-5808.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.6-alpha-fix-icons-react-import-5808.1.2+0cdbbcaf","@crave/farmblocks-hoc-input":"^7.2.2-alpha-fix-icons-react-import-5808.1.2+0cdbbcaf","@crave/farmblocks-icon":"^0.7.1-alpha-fix-icons-react-import-5808.1.2+0cdbbcaf","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"0cdbbcaf66b03f65920eec7a6627deecb674d66b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.2-alpha-fix-icons-react-import-5808.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-TkFS3ilzTWTjg19NGT548fYUs91EkwzcxoUHZ44NleiJa9ABsqwmileN3MYQwVFoKHV7s5jm9MLqObHoaG9XRw==","shasum":"155696afd869f487e19217b22f41704996d41ef4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.2-alpha-fix-icons-react-import-5808.1.2.tgz","fileCount":10,"unpackedSize":80511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfBy/gCRA9TVsSAnZWagAAUbMP/jCq4TX7dRfI5FuIKk6o\nIkWXHQ7i5t2Mr2qXE0EoZhWijgHFZWo5Nvyxa5SICBs+Awjb0mNmWVwtvTjm\nDHAawc2trXyRM7kPRdN1S+Wod4dMrZbo0j9abjwV1uwZZjXiDNo0LKmz2pyV\nXsADZr6bXP5kWAojU/dWiXkEwPbzCIkQ9AkTplwC2on78BycUpRdjOdiy+sT\nXxf1VyqojTwjnslTtuD/adhkXY/FtP1NxCxadmGYW10cyzesBq+9EhRAUBnc\n8+CHB0CYERIRDN7A4FK/5601jBsaeaaD/KpHnRBsCEO3uojzU8md7T++rVWD\nFIKblSHMsMn7H3PaCxLh4C7PmzZ/umlQLbeqdBUKUDLtFI8r+6T89pltDL/d\n2gBX9sYyBq+TPpu5YvFbAc03EJebcAU09CfhNgJvZjr/6Lp5YjWx5c2pH+3+\nh+BTojrPQfmCioj9+nyc27Cgox2zgBwyiXofKhzQRNSAeo9B2eNha7Zh8cdf\nCuevctnw9dCnVcAWP4sYGSH75I8IVgRFo2U8o9wkIjPfLi6RuzFpzB7KQuSG\nCjlVhnZiJes3H1eWQYTnss2qYmQib3fuePGe5+rB2PdJHtZ4ntmvC4NEtSQt\nrg+mgNA65Mu/rIUWkyTfjsS/5d1pLddLJ/mgwJr1TithLGGULQXY2mZM+91U\nRElU\r\n=Cdlk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpRxnYkBah0sN3XVH0e8hmU/2f66NWg39XznmrnzWYvAIhAL9+nQTMCG8MZG9ZfFsNfx36vGB61la1C3oRmenWICaR"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.2-alpha-fix-icons-react-import-5808.1.2_1594306528468_0.03211630241747443"},"_hasShrinkwrap":false},"3.9.2-alpha-fix-icons-react-import-5810.1.3":{"name":"@crave/farmblocks-input-text","version":"3.9.2-alpha-fix-icons-react-import-5810.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.6-alpha-fix-icons-react-import-5810.1.3+9340310d","@crave/farmblocks-hoc-input":"^7.2.2-alpha-fix-icons-react-import-5810.1.3+9340310d","@crave/farmblocks-icon":"^0.7.1-alpha-fix-icons-react-import-5810.1.3+9340310d","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"9340310dfa8fe15c8c0b0893fc6dc14cb96f6c67","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.2-alpha-fix-icons-react-import-5810.1.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-iZLcmGMSuqzY+eOItKhCkS57saroVD5yQ/mhJqEUfNXhv8N/pytg2DSXQqL6FiQn7a8Oe1558GfvltdTcuijrQ==","shasum":"5b6707a988d16e32db2fc246358b776fcdbf06e6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.2-alpha-fix-icons-react-import-5810.1.3.tgz","fileCount":10,"unpackedSize":80511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB0GRCRA9TVsSAnZWagAAPEIP/0PKsRnF1NI6p+vdeopX\nUFm3r9M+C0ftcVNhc+drVVwrvA+Dd97cCJXezg56lT18R9yvBMHHuFK4OaYa\noyyhK0lWPv3rvVUXegB0lneDNebRhwj3ydATwPPh6m3d8m7fDE+P85z3P532\nFzaFaTUE8Q8jcTBGkCVc/AToZxOjxu/doOauAKCJcfSc0BBZ+p5QsfRxXFys\n2pmRWYAmr6rbEI81x20eKKqfvMOsE2SuxTSwzrIxGuFG1rcvWuZh+8pM/9lg\n4bTWPQm0HNMF1R6I9zfICXedV0rAz5r4fRr/DXptq5xKKhc6TkG83DZKkRp2\nJWu4EarAGV3c3ee0vn8Pclz3Aoq0ffvPm8tTWMgjBQhXTxmwvZBtJQnovPe+\nvCOImjSktcYhpOQ7vPSy/+GT6xi1fltkGUsZG8C4L3hnNCyKV7/JE5oE5oR1\nD//2L+fqOS4yUH6EGiInHN6CQLKMgS1onfY4ZdaXUU/KXJOLF384g6jkelJb\npp2J6+3kxhGxdiSILYHRINzI1Ovs2BMBcnAZPu+JNQKZCLsofcITxqWr1pnp\nEz2kcnVWRNLqX7m4SlWnKr4uS+TdPDkRuuE8ovVIpW9sTdiusiU4tJTtlO4j\nXlw6FteDp5bKpsN/RwE090T3k0plyQET5Vx4IOHybTCkc3xdUt2vOyrVrwiI\n9F9U\r\n=zMxj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFrm9fzPcTqy/KZQe3wCbso2VQ5sdTpe9na1dSksYHoxAiAqPNc/xs2SEAFaUl6DzXI+gsdP2dRptUFZykVUG5Dz7Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.2-alpha-fix-icons-react-import-5810.1.3_1594311056843_0.41614220866316187"},"_hasShrinkwrap":false},"3.9.2-alpha-fix-icons-react-import-5812.1.4":{"name":"@crave/farmblocks-input-text","version":"3.9.2-alpha-fix-icons-react-import-5812.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.6-alpha-fix-icons-react-import-5812.1.4+a6b9188c","@crave/farmblocks-hoc-input":"^7.2.2-alpha-fix-icons-react-import-5812.1.4+a6b9188c","@crave/farmblocks-icon":"^0.7.1-alpha-fix-icons-react-import-5812.1.4+a6b9188c","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"a6b9188cc7e45d2be17bc698d73ae301cbb79ec3","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.2-alpha-fix-icons-react-import-5812.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-GXllySw4NWKbpgjaN55pXpXzimUBlPDBKvc3n1b8XSHENhcf3USzb1MiUjqAzQqAr6akceZkK9NmM6JvESMYKw==","shasum":"261dabaad228a80a07586a22e8db70c47ffd8ae8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.2-alpha-fix-icons-react-import-5812.1.4.tgz","fileCount":10,"unpackedSize":80511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB0RBCRA9TVsSAnZWagAAm+gQAInGruuutijCxSH8/Fp0\nte0/6lRnt1IxEuHD419vh7yVpm6xPzH805jc1ztfXhmWnq3S3gIWvU0iH/41\nzjmgdGbkg71rJVBpinvDjAEbpRqmCRdXJ1WftK2AT3jKu2BMgB9ZTSj50TQ2\nv1DNT8o9+VQxuK0d4LR2A8FsQUspoqGS2y7nT6RIQvNVR2gc6Jvxx4paPO8m\nqicjF+sBfvwWqDpnUI0gUhq72BrHGZfV1TOS34Jy8EuJK/7fn8K7JF9310un\n3k/sEC9mi132GZmz+utqJ2znXcHuFliPAIy0bUXhajB7TS8jsF0yNQ+FWVN+\nflT7mC//uqdWVUW3jAz++PM+zzmr5By7BlyhvsLHBcV9RWfAGpMAvMC4H2C0\nmAURsO8b+p7CjcdOZ0syvvrqyXvf5ZhtpW6se+f8hfUffbQCB77/OCEQxk+1\n1+Mn+Pk0MlVZR7Y9YGaGjfkaMFgLoN4mvwpAVWFfkS+33ed57XqmNtFGZdip\nM+swFtHU5oBaGUzFpB57fAxSIgFIl2wnk3Ni+GRNfrZ2XlgpI9tymkGExdGB\n4WinvbNWLNaYIOyHgsXlf2KjqTNIMkfH1lPZL3du1a8SgITE1I6NnVenqE0+\nSOa9TsYjV4NWaMDSHoG2awgnokPLD+xO3iDc4gemWeLM7TayQo9Rcves8EJY\nAXRe\r\n=VpJj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDELXq7hgWfM89cWovxrLUS/clSWqJe+kgUd4Bnqv0PlAiEAnecn7ayVVXGIMubV2uSB6bBjsd0U1TLO4KixYhHlYUw="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.2-alpha-fix-icons-react-import-5812.1.4_1594311744152_0.9913371121465315"},"_hasShrinkwrap":false},"3.9.2-alpha-fix-icons-react-import-5814.1.2":{"name":"@crave/farmblocks-input-text","version":"3.9.2-alpha-fix-icons-react-import-5814.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.6-alpha-fix-icons-react-import-5814.1.2+0cdbbcaf","@crave/farmblocks-hoc-input":"^7.2.2-alpha-fix-icons-react-import-5814.1.2+0cdbbcaf","@crave/farmblocks-icon":"^0.7.1-alpha-fix-icons-react-import-5814.1.2+0cdbbcaf","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"0cdbbcaf66b03f65920eec7a6627deecb674d66b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.2-alpha-fix-icons-react-import-5814.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-b0JoNTIoOJvqGad+xkYnlEx13uW52X8FGlPbXrK/9xk0BxSZs8ezyAaCJ75AXCUq1RazsvyR6nLf5LI+3fcuFQ==","shasum":"6258d3fd2d8831aba8298126b853de6060f02153","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.2-alpha-fix-icons-react-import-5814.1.2.tgz","fileCount":10,"unpackedSize":80511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB1BcCRA9TVsSAnZWagAAMFAP/RX6TZJdFlCzfMTZBDWq\nryXbTufN7YWQha/7ZeExkFmUJyU+B8j1t9e9ZdZK7/a+P1Nd9RuDMmGlaCS2\nSuQHFtJd1xJ15rQfubfCEqGuCtqYQN+Y+YEEEymXjaRxbq/1q/qV97nlCZ7K\n5vC5C0WOJuw33u1F6pfdlnMx0fpWlJWbcFm+15fL5X/CkCneu2MXU8q/S93W\nO0+uVTamZudcEWYVuWnYuvis6uBVZd0bP73orzyhjKdeKQHmmljqqiYkw5y0\n89PQd4R/oAETizqlUhh6sdZr42uKwAGhjwl8orllA5qkuK7tuUG55Tss7QSo\ncdRq65ueOSpbyXqw3sWiMerrGv9ie/DsRe2JmKbOFSnt4TgoFZkho+Fve8LG\nO2pA2SLDUxuSojhreVgzbakk71PfzhnlTRnCAU0gzfn9QWCkJALjJMAdRBBE\nAD6GzY2fuPZLKWOHcQMdGBd+9+QdoevbfjLnKlojoYRAd7gzUDbi3qkfND2N\njtN0znhkaGVd/GfDNm7KnEWdiMOWo01CJsbUti0nAsisXNYX7zWaBguV4QpC\npnCdEt2L4W+51j/A4Zpib5V1Gsci53XTpKKS9RoMJ/qehxIOOV5n3GFyjeVU\nHg8algZpDNyAlGa+clml1t3wxX5hCGoOiIpzUgghkjGCwydU4T17pnIBVsK6\n8FAP\r\n=C3mM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBvMDRTMHrG+oBd9UCKKwe5I6KTTO8wIzwSf8VQXFQ25AiAl4EkquUpAksCoCls+sKH4dNHBCFIsshTeTQsCq4Yx5g=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.2-alpha-fix-icons-react-import-5814.1.2_1594314843610_0.8158946917803496"},"_hasShrinkwrap":false},"3.9.2-alpha-fix-icons-react-import-5816.1.3":{"name":"@crave/farmblocks-input-text","version":"3.9.2-alpha-fix-icons-react-import-5816.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.6-alpha-fix-icons-react-import-5816.1.3+3cb6b84f","@crave/farmblocks-hoc-input":"^7.2.2-alpha-fix-icons-react-import-5816.1.3+3cb6b84f","@crave/farmblocks-icon":"^0.7.1-alpha-fix-icons-react-import-5816.1.3+3cb6b84f","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"3cb6b84fca37c25b5f2bd5b61cb59b4f08aedb9c","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.2-alpha-fix-icons-react-import-5816.1.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-5MUBhm2O9bRsJVmvPboHcVuCCPj3eRxAwAWLfuTdM24rQFHdwhAgJHxAUxFdXJ7D9YI4oN0hNjN5J1qvFrTI/w==","shasum":"0c5ad44698d4b33403d3508dca1187af8d57746f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.2-alpha-fix-icons-react-import-5816.1.3.tgz","fileCount":10,"unpackedSize":80511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB1LQCRA9TVsSAnZWagAAOVYQAIfej0zoINiWVemdyfXg\nuzJcd0j5X1JSviKQ9zoFvDdjGZ7tNXbdNgtyP6Ze5UKhRWbEr7v5DZqDBd0Y\ndll5VBCYl5FLIhWg4+l0zqKlwh8l2rNQgkZ8YQ654pyM6Z6y73AlTo2PbRyV\nWui/J9tY8hswCLq1BNCEyRmXjFSDD9lNGQHGWuZ/F0mQzUV0p3igmR2sVYX+\nLfRsU7NZ/vrJyAyttLjo3W8y1F/Qe0Wz/3OKhTVDTRtB1ZPVumUAYxBsAQ1l\nv8dHYS7n8mpEmh3ZkC5rME5Iv1jEJU0WfhvL+Qo7uTF0JiAOoDF2s25tKbaX\nb7DSeOWaJv2hJFygRh5NOW2Mm/UJ8fJ0QrGW8ncM5EHkfzWfY2BgZOLMgoWO\nu2qNp/ThNAlMkI6lEeV1bMMXg01M31oMIXHzOoIo/b47DDRymYENtC2F+x9a\n9StQLCGNaT32DxgeN0J3kj2UYoHd591ZL9cxcHIKTMwxuTRIaCJ7mdjsCb/i\nHhYd08493r682PtXJg5eZnK6Bo76MqBDV4l9DJ3FkgdItzP9VBKczTsPhqtt\nVzh20QCag+R0anyKlXtR1QGLZM9KlDtUwa3dNbF/tncZAz+RjPF1UOGqddBo\nxtHzVfEQ+trZqgErV97DhxTMjoKksdBvMnJxZ+/N2xSfQfJdeAA7ID+iVHjn\nveHZ\r\n=WMVw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICw1qh3YQvQeGnty19/ifCnUXSgpXaImofSzhEsJDWT1AiAiPUiqG/MjhWDx5STOCA9mmo8XcTmwkcBr5Ksi+h3HDQ=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.2-alpha-fix-icons-react-import-5816.1.3_1594315471691_0.176557787211153"},"_hasShrinkwrap":false},"3.9.2-alpha-fix-github-dribbble-icons-5818.1.1":{"name":"@crave/farmblocks-input-text","version":"3.9.2-alpha-fix-github-dribbble-icons-5818.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.6-alpha-fix-github-dribbble-icons-5818.1.1+0c424252","@crave/farmblocks-hoc-input":"^7.2.2-alpha-fix-github-dribbble-icons-5818.1.1+0c424252","@crave/farmblocks-icon":"^0.7.1-alpha-fix-github-dribbble-icons-5818.1.1+0c424252","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"0c4242525cb5ad68afbeb2f532cc7a394654227a","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.2-alpha-fix-github-dribbble-icons-5818.1.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-b+Kqt9DP/SpgEZAfJMfwZ7fzTYZGj1L6vbUGSROBy/33kkXWpqOpWY6QkFDWt72bzT6ccM9flHhKi++QEKIeiQ==","shasum":"1c856db05d671afbf9ff399a00b2808fd6520478","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.2-alpha-fix-github-dribbble-icons-5818.1.1.tgz","fileCount":10,"unpackedSize":80523,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB1gfCRA9TVsSAnZWagAANvsP/j/+j2C+73Kh5jbd6+Gh\nYusVf8VwIOfm2o8/yui/6CGhEXnbX6nXA7oATQDDSe9FSOMOenNeHVAQEShs\n1opbRkiXPippFTAUDAWlxeHjZ3b5zSszwsR77ZSIsPAyYq+uF1ZxPYqeUSJj\nUlqtMISK0NoRywLVJljwoyntfRExOtwA/L8cJyghhGWarAomZOUPgLCZlC1v\nbUK8y0unsmmc5z/CHaGG/fr8/E5JrauDh98U/+DdQRthil0d/bdVOklA8G6T\nj+hwUe4dvQMgPBwQtidQ0SrgwY+UUkVfgvFGPr2jlGxKaCcW+tQQN/hMiv8p\n7D1gLua+F9WwbxJ6QJHGRdmIU/dCc67NeTcdjAdXTDwJQqZyWMAyfmi3XJpR\nMO1sP+Lc0jfzIiTMvDLosCyBW/YsV2k2oAEwd3IPIFj1rAHoXzSv8szHMmyN\nIIC8/+vZHF6c3J1m/9jMxPbpdqKKFWaK4MOFup4NybIvz69m6lHpBJyYvjZm\nm8KZAu1JRepeUqJ+rTboTxIR9IQ2YOFPq+ghgyjDu1eQ82ayT1p7kP2Z6fhZ\n8KoZnZxDDulfm6dRZBHUMF7Z9QFjsonQFqXleo9jxdLsr34VUrCqm//+TQdi\nayEuoREjGGQWWcjoSeYgMGtSXCs/gD0PTRJzet8U3aN75Vns52Q7qMOQy2x9\n8/7C\r\n=cEd5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDhAnDnppk3B/Hdghx6eLc2yGgJYrQV96SVRwi525k+fAiEAtPtT/A1OLLhtB/907845wxHAwyPXoqhlQgdFtcVGW2Q="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.2-alpha-fix-github-dribbble-icons-5818.1.1_1594316830709_0.20073776972439683"},"_hasShrinkwrap":false},"3.9.2-alpha-another-icon-test-5829.1.4":{"name":"@crave/farmblocks-input-text","version":"3.9.2-alpha-another-icon-test-5829.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.6-alpha-another-icon-test-5829.1.4+c443d910","@crave/farmblocks-hoc-input":"^7.2.2-alpha-another-icon-test-5829.1.4+c443d910","@crave/farmblocks-icon":"^0.7.1-alpha-another-icon-test-5829.1.4+c443d910","@crave/farmblocks-theme":"^1.9.1-alpha-another-icon-test-5829.1.34+c443d910","react-input-mask":"^2.0.2"},"gitHead":"c443d910049b4bb0eb5542aa7606fc53d3cf3775","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.2-alpha-another-icon-test-5829.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-LLaw8yfcSdQkHnOMVFKtYQVca5p4CRJyzQWUHtRUPc51Q6v5eyJZV3ciNbGEUZ3kV36x8N4WDe+0DLZJAwOqEw==","shasum":"97ec7433010d532e2dc620139eede60f02e8d66f","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.2-alpha-another-icon-test-5829.1.4.tgz","fileCount":10,"unpackedSize":80534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDHiDCRA9TVsSAnZWagAAuucP/3wrJkMvqWmekIoLX8Ke\nVQ1SqEU9npNj7NaYjPglU/SVPIh64/wVDr5/SR8bGMyz4nOLsRSpvRaq9NX9\nHICbVjkcLr8F4uJVsaMqWHdVbYck/lnqxaxIGYVgbuaDwHklGMkRgq0obwWi\nP4HHEBjTY/TUI3Gqt67CNux0bJDVw6TMbO+LurCOmdztDIsj9vAE61HetT2f\nQlXW4TXMPCYaE62cGN9fCcb7Rfz/L9ltpwtVf4EFSZWjxRyGsNzTHAUnJMOg\nNM4/UcTCaWP/DeVQD/3nAc02cfFOo9YqrKN6Zj/HCA0Wc8QlH8xDCUYbr8Xn\n9yUoCXyZluDKGAubh4yNmqkxcsupUn5Pppm4KVZqjKJ4PHrpiMIvgjNZ4Bp/\n4kUoSMGLHGNkPfDegNGxs3lBnnx6mcApC5D9JC9G1f5vHIXIiiUPgMi0ZzOf\n11pRqQJmHcfQjhX0Cdsi5OhIGU8gs2/TpJaPX8y4s16EQQRbrT4lP54B6uCC\nU6TM5h0nmm649kb5M+fmug6aNeXmjATQo87WcYqcdyaWOEDaRDsAG1vE/jiE\nS72yIujBGYkaWY1qyfB9U473UIRZffTTvQ4F+Kro4biO2NCDOgz9MdgRTfJ8\ngvaQxIapEI21QirkaHIihSbVz+3/c8HjlpUiO7GFrXopePRA9JPKko2th5SY\nkX2v\r\n=h4fb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHUKY0eOjNEPnIGssIW/9yAVEmMtYPExbKKOp/SgrBYDAiApeKcfOUigh42kl0h2WZ/YZqFjaxfDQvu+r/RHo4uCCg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.2-alpha-another-icon-test-5829.1.4_1594652800845_0.17896240554135256"},"_hasShrinkwrap":false},"3.9.2-alpha-another-icon-test-5832.1.6":{"name":"@crave/farmblocks-input-text","version":"3.9.2-alpha-another-icon-test-5832.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^8.1.6-alpha-another-icon-test-5832.1.6+fa9d7b16","@crave/farmblocks-hoc-input":"^7.2.2-alpha-another-icon-test-5832.1.6+fa9d7b16","@crave/farmblocks-icon":"^0.7.1-alpha-another-icon-test-5832.1.6+fa9d7b16","@crave/farmblocks-theme":"^1.9.1-alpha-another-icon-test-5832.1.36+fa9d7b16","react-input-mask":"^2.0.2"},"gitHead":"fa9d7b16a427797355a316c1e6401af20c646623","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root\n);\n```\n\nSee the stories source code for more usage examples.\n\n## Properties\n\nThe core of the Text Input component is an html `input` element of default type\n`type=\"text\"`. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element.\n\n### Extra properties\n\nIn addition to the normal input properties, there are some other optional\nproperties that provides enhanced functionality:\n\n| property             | type             | description                                                                                                                                                                                                                                                           | default    |\n| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |\n| label                | string           | a text to be used as label for the field                                                                                                                                                                                                                              |            |\n| validationMessages   | array of strings | text messages to display if the invalid property is present / true if passed will style the field as a field that needs attention / corrections                                                                                                                       |            |\n| errorIconSrc         | string           | the url for a custom icon to be displayed before all error messages                                                                                                                                                                                                   |            |\n| protected            | boolean          | a flag that makes the field harder to edit, the user will have to unlock the field by clicking on a pencil icon, and after typing the new value, hit Enter to replace the previous value or Escape to leave the previous value                                        |            |\n| onUncover            | function         | if the field is protected, this event handler will be called when the protection cover is removed (click on the edit icon)                                                                                                                                            |            |\n| onReplace            | function         | if the field is protected, pass a function that receives the new value for the field and it will be called when the user finished editing by pressing Enter, this handler will also be triggered if the property value of the component changes after the first mount |            |\n| disableManualReplace | boolean          | if the field is protected, this flag will disable manual value replacement, the user wont see the save/cancel buttons and the equivalent enter/escape keys wont change the value. This property is used by the search-field                                           |            |\n| onCancel             | function         | if the field is protected, you can pass a function to be called when the user cancels the editing by pressing Esc                                                                                                                                                     |            |\n| cancelButtonText     | string           | protected only: text to be used on save button                                                                                                                                                                                                                        | Cancel     |\n| saveButtonText       | string           | protected only: text to be used on save button                                                                                                                                                                                                                        |            |\n| mask                 | string           | when a mask is present, the component will wrap an instance of react-input-mask, check its docs for further information                                                                                                                                               |            |\n| margin               | string           | custom margin                                                                                                                                                                                                                                                         | 0 0 24px 0 |\n\n## Built-in constraint validation\n\nModern browsers have some built-in validation checks that you can use, such as\nmarking that a field cannot be empty with the `required` property for example.\nThis can be useful to prevent a trip to your server-side when you know before\nhand that a field cannot be empty.\n\nOther html input attributes that have built-in browser validation checks are the\ntype attribute, like `type=\"email\"`, `type=\"URL\"`, `type=\"number\"`, etc... and\neven regular expression patterns with the `pattern` attribute. See\n[this MDN page](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation).\n\nIf used, and supported by the browser, The Text Input component will override\nthe default native browser balloon and display the validation message provided\nby the browser using the farmblocks styling.\n\nWe recomend however that you do back-end validation regardless of the browser\nconstraint support, and then use the `validationMessages` propertiy to present\nthe returned field errors of your server-side validations.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@3.9.2-alpha-another-icon-test-5832.1.6","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-B9D5a1yK0oaNEFqorC2roHiqIDZQUPTlikXAnaG4AxkKJlEUdx1y438vEs0aK82Wbn3oKEvWiCRS8q3E3gx3ng==","shasum":"2e792559829856fa80249e8d5681c7d90589e21a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-3.9.2-alpha-another-icon-test-5832.1.6.tgz","fileCount":10,"unpackedSize":80534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDH63CRA9TVsSAnZWagAA6koP/1eT6URcuGw/cIJIuFzD\nOCYAchbhP89sYrY+UlbwfPUwRBDjFyu+1Rt91CMN7z48kFyPyMOrR+2gjU5m\n0PmEzBz4QWY+MYuIu2Emwv++0lNLkX95TiQ5a5khkej4uY9RZujhYaUosOiu\nrFcAgHN7mqosl7tHZPvY0JjXhmDtRSiCEihUoO+K5gdTJUDbTTstrLtqgAYf\n+shODC2MF8c2HBTj9GFnAJaTkGzDbOyVHbb5ZjF0KFOhX/zydyGDct3R+0yl\n7kYSCaXu30UT5ehunIcq6+RCJmGhm1HVHa3IwK+S6Uzo0YUty4eOQJkPOqbp\nc8E/gypqTDagxClI/xVNA+WkDIhLxLEcz0Gf8qvfMwWgRYGVohTj0iRTdWMk\n77xSkeJwg9nuezuPcmoxQYlg0ihRVLuu8vayJKP7Dku4GLF3sNozui4NasZj\n0iowUvPeHR0g9wtrWEhJgPp8ZTKuH7Yh4ezHVdtgdaOvj7ECUR+0ZWZqCwUG\ndlV9E69jOjsEWkSHL/xGotfEguAnFbk92SMtktCeIZvrdtQTRMhY71An6eCY\nOAEJ9PCewKM25PKM1KfYVSaHOyPERYF+P6jcFP3dCDjrLByurQLxrTi+B8V5\nbXgkTxcNncnPa6hFqIy7q/VcKGAYeJ/98wvj/KxoeMUTMW2PtZMIAk0OQyP8\nOKA1\r\n=zi/L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRh01ZhQsX5Re/lANuiRzuhFuNT6SEZj1Tz0OaNj1LKAIhAKHeUVRH47ip67IXWmmnLfnRmNdaSXQGXbxGslECPNMj"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_3.9.2-alpha-another-icon-test-5832.1.6_1594654391001_0.22815953913724774"},"_hasShrinkwrap":false},"4.0.0":{"name":"@crave/farmblocks-input-text","version":"4.0.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.0","@crave/farmblocks-hoc-input":"^8.0.0","@crave/farmblocks-theme":"^1.9.0","react-input-mask":"^2.0.2"},"gitHead":"4317cdd64c0f94ebc553064903b3aa6da724253b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"}],"_id":"@crave/farmblocks-input-text@4.0.0","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-WicaDc80td55FUsDGoqyh0CFGV7FKSUKQSzTayCv2+MmJtpOhxELg1Ec9lBeVDqtcDhMRtyJtIaaIu+KwyFirA==","shasum":"82b65414d14e5643f114d22a888caffcfcb30642","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-4.0.0.tgz","fileCount":10,"unpackedSize":80792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDdxACRA9TVsSAnZWagAA3yAQAI5zuv0KQ6w/0UtwtnXl\nG6Q+E28pN1PucVEDfcGN0R/01TYw0lrpY+6lHLhd2xZClNTVDIORNNpDaxid\nUlotTGV9qcf7KAyfMldjUd8lY3+fTSsqQejLsUCL0tgiwNK4gTKxjtSlNVHm\nNNlyoxEF+85+90JesnrdmoTypLoPF2KKPvb1v8Ys/bVzH6o17EkvwAAEjV6j\nlzK957CQYLwBVdh25XO18RRB8kxXSNfn+X8Na55TvA4rJe/vbXChvqqdZn98\nZnrs7tcLGTQrhJzCDKqJdGrJarBG6asBufL9VgijAyQWRM0927vGKRwEi/VI\njuFRTe8aNllWr/G1s0Dg4hORpuu7dTQox23eoNEbxvc/cNgqx1w5xyoiOpwm\nDLLyzSoNrWqKKiVX5i7w0NzJI5ESpb7jeIv6AUS36MFXXwh79xbUJ/A/vdpG\nPIpwBC0WsxZ7Mh9XAC5wFQJKtl4zZsQXH8yGqqsAcU29RRon2vXcTz6sUbV4\n86NCcGATZdQoZ/NrGHEPAdY8PD2cJUirh5tEDABa9BSsPKvtY+iu3hup38G9\nuREfghXdEvfclioZO0m4sHXwBg7NwDrbXUEPtroh0flBN/K5w1ddw7iPkGJ+\nk3+35pDEkWm9sU++pMcfm7rxmeeUo9kU0tlCoVwMQKlhR1QhNydARulu3EYB\nHoFz\r\n=c/R3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBWU1azH/BUwY1Y0ksa285eyFoz+eOjUdYq0a4jAIjoTAiEAjnuTvJRJ1d3bQJnn69uwQYgsFJbEJyz+pqF60R5yPjY="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_4.0.0_1594743871738_0.24348622313485402"},"_hasShrinkwrap":false},"4.0.1-alpha-redesign-hoc-input-5854.1.33":{"name":"@crave/farmblocks-input-text","version":"4.0.1-alpha-redesign-hoc-input-5854.1.33","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.0","@crave/farmblocks-hoc-input":"^8.0.1-alpha-redesign-hoc-input-5854.1.33+d4ec4c96","@crave/farmblocks-link":"^6.0.0","@crave/farmblocks-theme":"^1.9.0"},"gitHead":"d4ec4c960367e0711823d362c00ea13efa0f023e","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@4.0.1-alpha-redesign-hoc-input-5854.1.33","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-yxJcrCVYGSy4t/ApEACeh5nUVhLm7NwdCQvwjMmYrtx1WK8T16XqAnCZxw/OhgE79DvM1BoLcYxy+DQ62LX68A==","shasum":"78559001f2539381573380383b89d6f487862f35","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-4.0.1-alpha-redesign-hoc-input-5854.1.33.tgz","fileCount":10,"unpackedSize":63137,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDxT/CRA9TVsSAnZWagAAq0MQAILw4T1cxt44hNIZS/aE\n5H2GREFLtHFBP2Se4R96rNIhpPsyh7Bd/xFiJRnt/FRd/qvK9snsp5ohlZ3A\ncq8uK8Z1+uY/vkLkOlupGi48KHLHen/3TXen46COKBBopp6rxsDNQ3VlUlpp\nifAJfGUk8wEDC5ajc32gs5Q5iGGr0lB1/7XsczTucwxifjxci+FBR8IuNMtP\ntKKIQ98ABwP9SsgdhgmbB130AOUyrR4025tMJuXDqyCc9rDEDZcXN6DX1glY\nUlltLa6emBSfsvGIAvHXCFuVznsRjMy66kPC+fEkAQT+Ri4PlGDqBFbK23Nm\nim0L2Psf3+jICkVOJ5M6dARcUF2PgBUWyoMpq0g50rLqChX1ulXGp8XPAzjl\nqWByn2GOMqa9tXKgdYYRNLtuqnmGsaPjtLQALYiVtV4P8qq/0LG/suVXWIJt\neP9W42SB36YXt8RGfuQphSAMSy4GzNn2fDIQWBp4S5Gsgm7RqlzIQSVy/gTk\nfRX2gyhMb66/VAfOPUqx0OfvD9rR86zVt2tc5xUS+g2G/NaZW68GpT/CjttK\nZ2Xd00SZxPCj3+Ni22HxHtfgzvXICwRVnQdftU6GXh8pgbURnk5FJ00d7cNa\nugZRPI+FTkZ1q5XBFe6mahnYCkd+TeRvN6Sb4KV392qmQhjZJgqdE2wt46Li\neGGz\r\n=xWRF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbn1Bbf/kPPCiYsVXDQ/AdWpBY+NECWkwAH6LAc7vYOwIgGZpVz9bUa6IhdGSMUPFjGirzxPaGr0VCc6cnQCf13Ls="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_4.0.1-alpha-redesign-hoc-input-5854.1.33_1594823935103_0.21305535048655289"},"_hasShrinkwrap":false},"4.0.1-alpha-redesign-hoc-input-5856.1.33":{"name":"@crave/farmblocks-input-text","version":"4.0.1-alpha-redesign-hoc-input-5856.1.33","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.0","@crave/farmblocks-hoc-input":"^8.0.1-alpha-redesign-hoc-input-5856.1.33+c0be01e5","@crave/farmblocks-link":"^6.0.0","@crave/farmblocks-theme":"^1.9.0"},"gitHead":"c0be01e53ae2a999df85b5e9a3e0cb5df3ac74d9","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@4.0.1-alpha-redesign-hoc-input-5856.1.33","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-WYVipv3uUXoHlawwxVA7hc4nMUs3kqHNiUtLC0ZDhy/R4Eg5mmQ/jU927xjmAPc47V2eXAS5tAajMDlbbP8wuA==","shasum":"66a796e736bfdfca5d2f7b65a9d1ee3a8a129ec2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-4.0.1-alpha-redesign-hoc-input-5856.1.33.tgz","fileCount":10,"unpackedSize":63137,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDzlpCRA9TVsSAnZWagAApiwQAIpMu5yBkpIPi6Kw4i8Q\n2oMvBPEJrL+KR5F9wzB1c0XuEeJwcfFUcWax1seKbJcHnSaB4pswmUigYjOW\nkVJmmfQRRp5U7Ba5G8ZjMrzLv67UlXGUSV75Nbb6JscVhAOjCD5vpDXo28q5\n6EfDQPsdlJnXPikp2sw86mxSz70wthGvPhv86HA5vwBLzoZbePJTt6zGTfSq\nzWL/UGJFq8053cyhVBmDemkgN0jV1dgjRy1qsuKgBeqWC9hlArYJtdtMFPvS\nsJfxfY9X4XkBddKkDJ0TRkYDCmBAm3aVYvFB1jhCrlo9ZYqpNsup3NWT8JbP\n/IPT4kgYh2/LoXzwKtspTJ/ww3mWBEaXH7aLg16C8d34DcUjxjIO+xv6EDT8\nYxYPg9YO543J+7tJVtYoaRrl0+pVguSELlLkWXWoFvSoW5pObP5FaSJIuGGY\nfNu6AaDAD8PklBU0sLOMiRVn4oTZszxDlRGPLZixBUji6bPL2pgKIJ/H7hRs\nIp82onQQCM7JTGH3fDPD57mHGYomOGdqJQZxQAJRUJlWD3ecmpC2TJvAwu0x\nwQUIa74YQUEVAErgXMIRCJEy147ROsyAxLZOWk8OJ5+fEz4AKapHm8Pu90DF\nvdPc2OeN8DETrG/VyjOTa9Zur8394VW2VLtQGafE2YPiYq+MRx9LZ2tpW7lP\nUrWo\r\n=M9PA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0GfWorumdAoyO+CDoWhUo4uAT23Ou63CvcZK8eFRKJAIhALsGz4kVCg4CWZ2C1lMtiVqSLmBJA/G0IIOF42vCsoOL"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_4.0.1-alpha-redesign-hoc-input-5856.1.33_1594833257121_0.2334873375326154"},"_hasShrinkwrap":false},"5.0.0":{"name":"@crave/farmblocks-input-text","version":"5.0.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.0","@crave/farmblocks-hoc-input":"^9.0.0","@crave/farmblocks-link":"^6.0.0","@crave/farmblocks-theme":"^1.9.0"},"gitHead":"58fc7f7bd7c0e1cc578a30dd5d52b2fc22965522","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.0.0","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-k1O03q7k+8DnlY6D35HBKjknYN8T5xA25hVC4m41680cD1/ZBMGgXimNm9DsHPwAWMXSSrq+MHacZVRCTHkXOw==","shasum":"5b17b5c1dc28610cc9aac783cab3f69d2321bce7","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.0.0.tgz","fileCount":10,"unpackedSize":63648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfD1iMCRA9TVsSAnZWagAAeVwP/23Fc4Yf7OievIzCU+AR\npZkNoad1lp25QaUA1dSz4HJc8qTmC4ZZfrf9wouzbxRDrY81psKcom6wEvPJ\nPe/HxlzwiprEQipBieWkoVcQSFW7g1ML0NXsxAh9oMVQr3b+TFgEsArYf4yj\nKVKMcnC2gTxGO+I6dCN5fusrMpfJayhXpkMcUxqZvh3852j39i8KC9piGwzP\n7MqhWgeeeNnm+JjUNy6RJmqdWQa2kmB6bt0stFuxiL5coFvRRafW138F/9o6\nEDAuts3gPVoJjwHX0++HFTIX6PYxGsful/li+MC/Zi/X2LbDJK42ns+FvBL4\ngshYPbbHA2Ga5zlOpODHhP9iicyEeVLDjq4NrDnV+XN7SxDb6iS48RSEE0uq\nQSopifDd8tlm4WWp9xFAYPHANZYNHxfWD/TV95HUMxH7ihGgsT0RX9TV9Xso\nK9ylRU/A85VFbmWLU6wm5lw+Ji/0QOjRaBzvnI15cSprMz0WvT8NFEz7Dlfi\nl0btY1QuwMmpJwfUm3wmOHf/Sn9lm+bEQxnKlzG5zbgxCoFpHi1A6G+/wwv4\nx2FEZBinVAq4L6Yt2FiSdw/EsXbvnSJZybIpe3TuXsszlPtLKbOTMXwSyKMJ\nJd0xhGBeMTgtAsh5hy2cNLBp0v/48EfOrpmL2GSJ1ONJWPsVc5MxXtnLPGZ+\nSN83\r\n=SiGU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAYUcF1t/pWVTjP0Lu2L76EoWXa5cH4C2e3o6sThnspTAiBrIKgutyYNrxDk2hKZwhTZ5DBdPILhUho8FjA32rqdCg=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.0.0_1594841228143_0.5922777845393223"},"_hasShrinkwrap":false},"5.0.1-alpha-protected-currency-5867.1.7":{"name":"@crave/farmblocks-input-text","version":"5.0.1-alpha-protected-currency-5867.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.1-alpha-protected-currency-5867.1.9+58734103","@crave/farmblocks-hoc-input":"^9.0.1-alpha-protected-currency-5867.1.7+58734103","@crave/farmblocks-link":"^6.0.1-alpha-protected-currency-5867.1.9+58734103","@crave/farmblocks-theme":"^1.9.1-alpha-protected-currency-5867.1.42+58734103"},"gitHead":"58734103b0e6767231a40c638b9caea4ad9e085f","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.0.1-alpha-protected-currency-5867.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-dXxQK7wUHejBAb0m/25XdsDYTIVtgRXgcvA/FoshCjhOlFeGfj/3kzwSZmMBW7G5e5QImnCgG5pmV0jJQJKQgQ==","shasum":"3eb2218ca835ea6ab5524114ab3c4924fbb61238","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.0.1-alpha-protected-currency-5867.1.7.tgz","fileCount":10,"unpackedSize":64365,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKa+YCRA9TVsSAnZWagAAhZAP/RS/8sFN4896WXt9IpQl\n/eC7AvbPVuRcGAA9KJmhNRByNd43TeBT07GGSeoXZQzL4qcLyPx3fNrliRsU\npNk3+Uff4g/ynUKlMtWBTRKbCydSeNpRoTkdQQC/Ww1CH+OFrir9qPUcvqyU\nJLg+lubRxhOi5FvZ+NG40gtBxUqxCxYa+bmIXiwEKT87t2ilhlRp4IyFCmiv\nwMM5ONEZejxmgkW2EzCx/qQfcH/VqArrqjhH4S/6TZVlKExNaf4ZP0P2Py/n\nRw/keI26dVR5277Y+hucLA2dRLjKgLW2gs7DvDHEyCRQeyjDVHddOWAHHoNU\njXtX9aVQ8dmf3vRDw4pJ3ZtPWOSr8KxvMxLprxg6pdcP3cxWUhM6GdnDBt9k\n9+l+BEwpwFFjV6lrTb6Oz4GCcIk2AeDu1W7Ajdi72jrkUofDwitZPMRdL7pc\n3VX/7gVyeoS5Ysy+ywFYfkFjov0F1QcKebc013CP1IsUrwzjhtRV/vNah1qO\nJZSx/AsAg1cYfmQ0rqUgQtu55UifNmV6fsR/Ua4Fh/vpc1pARSjGKLdSOhDa\nv295H0v6+dEd7RW1F6LJfUplmRS4vg/NpXhmopz5hhAjV67LBFwe3A4a02kz\nXmJADQLgySKvhJWNTVp+sDKDcHMy+1CUuEm0Tv/9OG+xQiMcVN3gVilmnnpy\nVcnv\r\n=6UTZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDv6hI/zM/Lie77EPXmb/9A8Iam/V9ZT/mGces90k2L9AiEA1hWGDbRyJ4ZtZ6+1Xk2+usX3fhIuNRj1uVpa73ojhCs="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.0.1-alpha-protected-currency-5867.1.7_1596567445590_0.22718004601951058"},"_hasShrinkwrap":false},"5.1.0":{"name":"@crave/farmblocks-input-text","version":"5.1.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.0","@crave/farmblocks-hoc-input":"^9.0.0","@crave/farmblocks-link":"^6.0.0","@crave/farmblocks-theme":"^1.9.0"},"gitHead":"2ea151d67c0691597b2014c8fd773d6e3c2a0a58","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.0","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-tKihMz8bwVaQ+jVEGJw+/4Fa2MnSHefrQDCR8H5WXI8ca6fYop9ddgtVQbU+Sn2vKP4juOubWFZltnrA0wGh0A==","shasum":"bcdff774dbad4f4aa2d18302ed57354e3ac7ed41","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.0.tgz","fileCount":10,"unpackedSize":64610,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKqpHCRA9TVsSAnZWagAAs0gP/A9Km9h7Lj8MJdvKLg8v\nHH60aGCEIIxDNKxKMTuIifN6RdTeUjLNy/ZPHBM/sGZm4YZ2+vS6DGNHHr8E\nFXVBCgxf2eVz7wVBlFEOkPNGnQEqJNvU4lpA7tDF1fKmZMD0RWYY1ThEbBuW\n7xR4zaiP0s4lyos27hL0ZWqMWS93R2WtashAsk2jDjtvdV4Gp9O7r6R1JsfY\n2DEgz1h7IE2iSQcNFPDXDJdTCY5zP6gQWV5hvidHYdyq1G0AKxIK2Gn23w5W\n/jY8kagx5/k/K8tt8wswmC919M0j/iVhCnWD+HMXHDBCI+P0nqvqHQmg8nR1\n2LfzpIMkuREjVlqMJ1hPjqF+cajtvF4e7PiYBLX5qAVKlWVWiO4Mci5Gv7Oj\nj8f5TEzMEmg5l++JdRrrFgaPukoWF+b5V+99wadBSoK38KkTtJm0Cf5NdqGf\nyv2Ekniw67ChZpv3ZYpS9TDXdyzSorWsuiWlsTBRIdll0iNuQuxzgrH8HTRC\ndKuT2OW3zyour66eaqdCcPYtUpPpVj4g1bYtZQMLD8TOdsAGJ9RVglgldnU7\nh21b7d4hZIX1vF2W9OrTrNhI8d0HBrlVuaGdpkCGugrKjd8bcMPsz41W5K0m\nsDWA0q6BjMFuT31R3PZB1BCMu0zam6IkWvYiMB7KH7YCCGzrLsd5HPFWyhJt\nm4vn\r\n=f/ug\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/g5ESO6CAIKHOdN10+ujpCFgEoY7w5WrQG09ATmjONwIhAIanZRtAcg+nfSJHc6tapP9ZFqQB1088taq5zTzF/whT"}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.0_1596631622591_0.866389245483004"},"_hasShrinkwrap":false},"5.1.1-alpha-button-redesign-5884.1.15":{"name":"@crave/farmblocks-input-text","version":"5.1.1-alpha-button-redesign-5884.1.15","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.1-alpha-button-redesign-5884.1.23+165a9e98","@crave/farmblocks-hoc-input":"^9.0.0","@crave/farmblocks-link":"^6.0.0","@crave/farmblocks-theme":"^1.9.0"},"gitHead":"165a9e989844e690e495c88a644b0e5cd0b78e4f","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.1-alpha-button-redesign-5884.1.15","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-P7aBFGJCMEY1KJTwZWt6Ndv0Bm3AdI5/ViCcp95cmwciXAi8PFzjUC93yH/CuXB40mUl5u3ArjVTLXq6YzYeIw==","shasum":"35ffbae0ed0695ac8ede7470fca577420cc5ed94","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.1-alpha-button-redesign-5884.1.15.tgz","fileCount":10,"unpackedSize":64692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfT/ffCRA9TVsSAnZWagAA5+0P/iykvjzJ2uOsSRGUi1gk\nHrIhSOYBkHY7o5usfxDz0p3vI60eZ6aoP1uIrgVykK4jzFsbB94xwYFZNMhO\n2TyCWdcCT83htDQuYFGzD9kE3wy69YcHn+/yT8IKEQHeURPCcGnQDZkveFYn\nW5KyL/lo4zVUu25A+B4czpbPXJvZYsiVy2N427Noy353HQp5KjtGoQ9tjeJW\niJQ22C42U/GhvwDQbyCs7GUJOa9zONZ4nUChg1z8iRemeaeCR5Dh4QkK27W7\nju8D+QUxPgNbDkb9NoE5FpI0U3Z1/P4jKrhYSG81FggQ7YXCgw5ekaL1aLmx\nTLbPO/JHG2J3MZzDmsld3Yna06rBEsXdxsROHwqaYQNZoEfEnhWsM+J2Hwta\n/HdJri5tSfeUR8ThOu/LujOjLA/yL9QczfZOVjBWFcH6GBzi51zGeyr4umcW\ntzAguOl7fR37mmcMGejEA0bQ/ZIZ+c8zlnTfpvls2Cm9x1td6igDHlXAoqgt\n2O69/WLOMMj5IKn3PzPuqiVklO/5IdruIMx+jGBL4t89S7JThHHdYv/z/ZiZ\nvhyo9W8cshYiBKGic/ck+0Crb7x1MCCnhyYN/KR/RWxz87sA3tAqK86Wijjo\nXcINI267TKZlDQEOAFLJKkEt5fiB8SIbysLdI6uiXA5Eg6resiGWP7HtEE+A\nLlqf\r\n=fQmv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEHphXwEiUkfZxzyCoyfsQJZHoIQI+Ue0/4+Srup886/AiAsRuVJUv5XvdGze6fNDDx2+2KTf28fivHwhFLFdxQD9Q=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.1-alpha-button-redesign-5884.1.15_1599076318495_0.7039253519404414"},"_hasShrinkwrap":false},"5.1.1-alpha-button-redesign-5888.1.18":{"name":"@crave/farmblocks-input-text","version":"5.1.1-alpha-button-redesign-5888.1.18","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.1-alpha-button-redesign-5888.1.26+1e83bb2e","@crave/farmblocks-hoc-input":"^9.0.0","@crave/farmblocks-link":"^6.0.0","@crave/farmblocks-theme":"^1.9.0"},"gitHead":"1e83bb2e333e3dc07b75e571bcd43e86fccfdbdb","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.1-alpha-button-redesign-5888.1.18","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-rbIMR00tV1oK0EHBFQ9r8uQjrn9CjQEioHi4VTaVKvgMbUtC+OvWR+Etj/oTWZ0q0RlckIxU0fgoLdcNU+jeFw==","shasum":"b2f9090e44198643881490786cd6c1f7da7b971d","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.1-alpha-button-redesign-5888.1.18.tgz","fileCount":10,"unpackedSize":64692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUUZuCRA9TVsSAnZWagAA4u0P/Rc46BEZXJQgFGt8KD7q\nuRllIC0jkbAWveYC1CQX6G6u2hOeCb4Wu+JhwNMU96zJvAW0gjvuA99+/l2u\n9BcjDb9KRfsALoDkLzp+CWLeY3afT4zKtsfY+YHzgpHt5u990fgke9ABZyZn\nGZ/E2OhalmzLuaxPUvOQlnrdIwj4se9CXPRteBpE5HOgejbGLxzK5JPIdkQI\nSjlrZxwcbXwG6d4SNEUh5F8TQ41EKFORlGlJYUp3u+Op9GtSjvyWn7151VwK\nzOduSDZou7obh38lodiLdXzfHy3BVH3Qi9KgLb9jt4j2WuAt1f/VbZKF5S/l\nTCBLL/V5C7JdbEN2X5DnJh+ypZdUF+S3FJsEkqUtV6iGJAXnWu8yAFqzgift\n5sdLLwUAbBIXS2wtgnf/Qi6rQ42/dCQdi0Jaq8uQ1464VlEif6xXrohCVHo8\ndIBjmObjxJMO4WSMxZJ0mdMRMHs+U6TqCY4R32pJaxZbQG4O02PLRIcBogxp\nzIKkRLV/89PwVQ1FjMM/2tSXgWP6wLoH4Nq33/qSU/4jNRY2BzeBk1eJURCk\nGbg9tVXd8zIkQEfwxWKkObComUBt9ilKJVId9QzIfIiGwP8JpgUV/7qpnOXE\nLZhWrpipoxbJSyFkXNjji354UvR0M4AiYXqJAxXUtcsL28XJuice5tZu02uw\nFlVg\r\n=dsHN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEoBuHVw50zkFp/S0GNMhJAjuophWHpZlzOsUe6xaDSNAiB5mYFMPwoCt3WZeoZQ3QLma83onCg6jrX/DWVM5x8srw=="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.1-alpha-button-redesign-5888.1.18_1599161965858_0.05762772066226862"},"_hasShrinkwrap":false},"5.1.1-alpha-button-redesign-5890.1.18":{"name":"@crave/farmblocks-input-text","version":"5.1.1-alpha-button-redesign-5890.1.18","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.1-alpha-button-redesign-5890.1.26+c3050bb7","@crave/farmblocks-hoc-input":"^9.0.0","@crave/farmblocks-link":"^6.0.0","@crave/farmblocks-theme":"^1.9.0"},"gitHead":"c3050bb7b0b0e8458b76b2a8723d53bb9030c471","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.1-alpha-button-redesign-5890.1.18","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-6LdgyHEdYTPnRnt5x2dE8MLMf09QEXHK4SZNrxB6qUvYLcRBpwGFSAYa/PjGEwz9SyfA3kRbp/FPN5/WhuYohA==","shasum":"8158c363eb5ca73f90ffe96a6bee1541dcb15497","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.1-alpha-button-redesign-5890.1.18.tgz","fileCount":10,"unpackedSize":64692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUUiYCRA9TVsSAnZWagAAmSQQAJ//KrHxhWpd/09tjaMY\n4neyFEUUSzhfuX2WetzgDi530xQS8j1+hCGf6/4z+d4okAY+PuWWJT+U4RIE\nYU1mf75RdZjJKq/+Gkp0cK+7hi0Gu1UXZcXIAZmpZfxxRee9KBiG+t7ey9DQ\nIDHnyB6X9IbL942ut9fruOHVk4bFRUkwuKnq7HRn4O+T3NNHO6NOHq61cULY\n6AycK29zl4eBa3jei3YKriNOqehDHhLEvgTr/9EtfIUxiSfWZNcn7+BnfR0r\nTPYMYkjC3ooFuoVflGlYx6Y5n1cbDn2cFf4lSBH4B69i6LUhldnQE2IP3GoM\nWFHN8CepD0F73CqGPXic+NQ0np4sXKTBmdjXieOtXmkne555/LEOxSpBHHe4\nlQBE9yXiUW0TqQExF++UJfjNUwYhqPmKYebKEBajqI1gs2nJd4/u2f6ksS0B\nhIsEOOt6DLZwtqdSJkOWkVZ+xLs8gAnJGMaC81SqbFKYv6GqlNoVVzAsdtP5\nIkXsLAQgnHkyF3crEe523aUP6aYHKT5K3iWR9DoqBrSJxu6CFzVKtMXJq163\nP7wdW/3Wwomykyxf6yBZ+DR4K8PuNDT/22PdD6jgvOMBrk5o0YNTv7n8zM5i\nnkxPgcRJlUhIL3v9EvxSjbrMBs5gDPL8CXmgOaF+59wZaCJbpoqTkNnuiih+\nCylD\r\n=mOtY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF78XikDvfVTJcOIk68Fsc2GnKDytzl8VU9/YKXyW4NXAiEA9EPAVZIfB4apoR47eQY7tYeC8VM/JizIaMR8UrvWV1I="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.1-alpha-button-redesign-5890.1.18_1599162520427_0.3720225797265704"},"_hasShrinkwrap":false},"5.1.1-alpha-button-redesign-5892.1.14":{"name":"@crave/farmblocks-input-text","version":"5.1.1-alpha-button-redesign-5892.1.14","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^9.0.1-alpha-button-redesign-5892.1.22+b05b0309","@crave/farmblocks-hoc-input":"^9.0.0","@crave/farmblocks-link":"^6.0.0","@crave/farmblocks-theme":"^1.9.0"},"gitHead":"b05b0309cd5ad5f6b6161e44adfec0414a193ee1","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.1-alpha-button-redesign-5892.1.14","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-cXDreVLCey4GsHTxDj8/mneQOZYfihWWcZo1g2q+o2GZR7Ua6ayqwW5uNkkvbcD6o/dTvR1QKa+nH8/rkH0BGg==","shasum":"6e317d37a6865b572dd707d8f089a9a32d24982c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.1-alpha-button-redesign-5892.1.14.tgz","fileCount":10,"unpackedSize":64692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUmzjCRA9TVsSAnZWagAAk30QAI9YPSSvKphfb0P7MPN9\nm9psxGDd8FcVoN5lMGY9whuVTcUFxY/a1wevdhw9oLAaISqQnaMwnHIju9gR\nRY20gsuF5FIlDTRleSRT/PGJW1LLhlVv398s4ISV6DdY2a3bMg5c1W9VKVvi\ngRN5LFfqLmsrJgRTi5V8s4lkUCd5L9fTjDhuyfkxE6cHknoxHqF0rtLOL8rE\n7TZLO5XT3Yb3ShHpHCPNuCWLGcAWjW/n88UE/e1mthki9JxRINKJVA/ij/Cb\nLqfndUCi0v7d3AXWZnpjrBvzTFr0fSQw9VPoaRJ4M/sexGU3bCgn4RUX2TLL\n0O+iGYe5EDp3Xe5jtIB3cj7B2QK5NPXzNTlKgxkLz/Z2YJBwi6p9Nv9aQMe9\nJZYLR6NJ8Hc9RIJFJR2rXTBpN9JqnPLkV3A2XuGbmVMu70fJq5sa8VdjlJc7\nlRiymP5B+CDvY9uhhawPBmwzPgkp3lBi9SYUyP1NNiRyx7pUakWsNX/9UjJH\n2I6zudZBFTtSYKOBzzpB0y9ByyyDDf7mIW9NxsnmjMAWcgi5eXbEz2yR6YGm\nNUlfrTGKOmYQiu8ChlaFnlpHkcpBssQWgSn0GQ/HhyYGMawTb2wWI+7FI8uE\nGLFdoow45Jz6tKy3zXoCGqa4sF0zIKH+ciukF6aaL8frE/+DFbAxK48TzIb4\n4MXG\r\n=c84q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG0TzLCCXx4iUJtjljVA94osJYhytou8IJwZIFOUXj6UAiEApY+l25o4MQrJEiGtigbNjdrTjf3MvTLuHMrrdsSAbYI="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.1-alpha-button-redesign-5892.1.14_1599237346631_0.2282191176549111"},"_hasShrinkwrap":false},"5.1.1":{"name":"@crave/farmblocks-input-text","version":"5.1.1","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.0","@crave/farmblocks-hoc-input":"^9.0.1","@crave/farmblocks-link":"^6.0.1","@crave/farmblocks-theme":"^1.10.0"},"gitHead":"11d8e81fedf57a21ea8c27c7e975534552867662","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.1","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-KSWCJM6lUifSeVXUNLWye59sjvvc7v89E6MC43o13XdrxvmXb2txPJEZPWxtHYlNRcf6DSBPCDWtr04PE7Fc4Q==","shasum":"4843927ca18797dde2bfec4b147b7928d205803c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.1.tgz","fileCount":10,"unpackedSize":64832,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUnE8CRA9TVsSAnZWagAAr2QP/3zOSC3OR4jbNmoZ0KBN\n9SteFgKWxRmea3epbgGK1KSQCYt6PbXeriIbDwT3dicipwwS4+2u/0rLqz2O\n/h/XzzNdGu8a8ufiQkWMHkro5zV6nd3J54GHf1J8M7nYCrb04qCbA5Ue5XOK\n6Kcel8wwqAM+LIgFXwDuBG+9sXtbk9sxpPR8TlLm03bzWW5aIi6BJwXPf0/J\nOZZXJGCnmN8tZogguqFkw7QHxU0zN8A1mexn+m96vt4r+mnDJ1XYjlhknZ3U\nbS3KrHDvVhdCfo6bQgKH6OeWG/PXSsXR3fgj/PEhd45hqC0C9lwa6DRis60N\no4uxqlPH089E8R75WuM1ATreYgM73jLRhg6qjzt21pMyosufkIOu+U6WKe3b\nzk7jFDVPy4FCisC43kizCWrC/nhO/Gf5IGQOiyaB422xip/yt75EhrQch+gC\n3CWD/Wc/IiKyurGeleTyBOpJKlwDD4YxjGLUHET9JTD3BEHhYiPNsx7/1Hy6\nBGhL7v1PyBVyJ7sHfNsWwQWtm4I98JjNu3qwNS2CBeU74HGiWgvUjHQNvAmy\nF53vU4tvqjnVMfJ1ZeNqdXuYs3RlM4GzDhrYtHmzZSABRaGY7j9R/eGdCdo3\n8oGE9O10ehV9g2O4sYMu4ggD14vmk8AYmi04bNmzi/XfxNn+7i+yBvmlO1ae\nvOfb\r\n=sDlv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBZUybZigVmKaOnoro8J6cmlDzr8WG2ETB7q0hvXJBcZAiEA29tBa+bj5aGsUBcj1pxfdqzdOlLzQxAEMEsOfWgeMBo="}]},"maintainers":[{"email":"alcf.2099@gmail.com","name":"alcferreira"},{"email":"will@sourcewhatsgood.com","name":"imwra"},{"email":"seocam@seocam.com","name":"seocam"},{"email":"hello@vnakamura.com","name":"vnakamura"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.1_1599238459769_0.44196934267678323"},"_hasShrinkwrap":false},"5.1.2-alpha-fix-button-white-space-5896.1.2":{"name":"@crave/farmblocks-input-text","version":"5.1.2-alpha-fix-button-white-space-5896.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.1-alpha-fix-button-white-space-5896.1.2+eb265109","@crave/farmblocks-hoc-input":"^9.0.1","@crave/farmblocks-link":"^6.0.1","@crave/farmblocks-theme":"^1.10.0"},"gitHead":"eb265109b3f15d2ffa4cdee65d60990d2609bfe3","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.2-alpha-fix-button-white-space-5896.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-+9rzzT491iIDEbQZfH0K9QCAq0/JI3D0t2TUHzirqHmvly7HC35WBzgI60blMFi44MMyekRJh/KoPt5Qj3JheA==","shasum":"66ccced616eb3ee4e27857a3cc581b60e4f99425","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.2-alpha-fix-button-white-space-5896.1.2.tgz","fileCount":10,"unpackedSize":64926,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWOaZCRA9TVsSAnZWagAAmWQP/1DQNV2yfx2TYYUioeVK\nomuj3NSVhX9vTtrfQg4Prhb4hROxbj9MHFFdhzc3m896oAneaAdVvBiFVd3S\nbHfh4xGDuZix50AR0QE3Uzm2zInj3jhsMUkq8JN3GVFCH3i5vbQVHRk+AkNP\nA4PwZcDy4XzIwLCm5ZrvJPl/fnrJbLGzGOROLIDXhjQbpzL3uco8gH/07/Fi\nh49aEKWvQET/e/y8ZgU+jCF3gmzi0aluO06IDb1GwQRmhZvsfyzhC0esN0RI\nm0ltGRcXKSrAerufzOEaOHJQkvxf/cDkTo6HwO+vbEgfOVvDjNZ57F66kOlR\n6RjAb3hXoWnk+zX24FxkzaUxslvPnCIZGBGWpsoTZzvrN5+1u43FL+6t51dD\niW0yMz7wlcaPNDVE10QKqZugCta4jrCXfuLaQCCuO/+617Fc8ZYtQ0y4ilQ0\nFQj8xiAtCpvRiYMJRZn6O2wEQXv2QDwAgOjudBA+MZSxXfQQKgqS+o4xlhAO\nWuziJOr9S/WQMYuUsyQBI/kknSqtkcxy0i+vZYTL8B27eI2DcVCMZud8ijHO\nSc+5Ffao6WL+3zZ6ClAGso3RFtuRlWT4A/noSd/S4bf5tVGuEqcWiCG+nWNK\nuWcAv6gGJF9UYqIlmNDL5RDYXSUDvDvq95T8Y/JwRRer3WQpB9nzGDc5+etr\nIRW/\r\n=6fCI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCB/f6vPYdRlUDQvU8Q56gP8PkKyKzpU46zMrcaN6CcNQIgaR4bYNIieJiHJhKDS5JORuk8jhGN6EmJHozmRCYoPNM="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.2-alpha-fix-button-white-space-5896.1.2_1599661721177_0.49137506095578987"},"_hasShrinkwrap":false},"5.1.2-alpha-fix-button-white-space-5898.1.2":{"name":"@crave/farmblocks-input-text","version":"5.1.2-alpha-fix-button-white-space-5898.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.1-alpha-fix-button-white-space-5898.1.2+6daaf17d","@crave/farmblocks-hoc-input":"^9.0.1","@crave/farmblocks-link":"^6.0.1","@crave/farmblocks-theme":"^1.10.0"},"gitHead":"6daaf17df634c3d7ace061791f08e3b1a87e9f1b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.2-alpha-fix-button-white-space-5898.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-9ygDGDvhUaxO9a9gSvAXjag2Us+AhLs6CHKZnKxcxtYKIlLgSZjGYb9WKBPcIWTIFYPgr3lAH1XrqwpKGr4yfQ==","shasum":"a4659a479b96f79877057c58016edb385b598563","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.2-alpha-fix-button-white-space-5898.1.2.tgz","fileCount":10,"unpackedSize":64926,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWSiXCRA9TVsSAnZWagAAWm0P/A3GX1plN1qbOff2XnxF\nUmVpyh2zFtIXndoYpW/wXUywuQHyZQXzIEWqjvVRbNnb3yfUuklw3rWe60Ut\n9kb7RfBEmFem+b27cu1sKVV5lz8UWG/E470qSGw0/r536E0McfQyghVYZM49\nx3SnTzHiWuQQtmyoTvowQDzLGS9+LKnh+u5AhUzlj0R7HduCiSOS+vtf/mz2\nygrdAjarZrbvKfNM6vhkHQAFzrUNm4lQB9QJUGMyj8dkaa/GAhra2h/nsciC\nSfN8h/L0HvOIeDehdIyx39gKWm3oBBaUfby3j0x24rVpEArRcpGqNh6GZUYF\nqcnCw/qhpWXFeNq1AnT6dQenpRe85BjjWNMk4j0oXDDV4ZE7xsyi8K3r9V6J\nHPxdQ0uJRKAy01KgMHmBLdGX1yTFm89WS5ozFGsi/eY9RUbL7efYJEzGZqqu\np7Vn+00BsunkXZ86ULzrwHUSWT3zq8FTPbBAOPGwFZYpZo7iZryxdnp1zDSd\nZkScOxUyCSgh573fMztgNgsbqrHKt2JsTWA7tzIkowmUakTxXw1yJjCqgxYi\nuPvJ6OyMIrusjE5RJjOsienOCNDB0zrwU+DYOIwkMlUt+T0NfdPDVOgxt3cU\nfP6n8XFdwZbEhAuymIe5FbuMadgMScncuRLsyIMOxo/eLaYwKaf63nEeKnrQ\nhqC0\r\n=Dfw6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBWvSs1Cn4tFp/SSvTn1vzXDnTAD5gwyJp3iidEL/d4QIgcuAhLhe1DAtZG6Qnjv5OSe/cA5DG0dZIcbuQVaol1dc="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.2-alpha-fix-button-white-space-5898.1.2_1599678615290_0.7493672435106673"},"_hasShrinkwrap":false},"5.1.2":{"name":"@crave/farmblocks-input-text","version":"5.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.1","@crave/farmblocks-hoc-input":"^9.0.1","@crave/farmblocks-link":"^6.0.1","@crave/farmblocks-theme":"^1.10.0"},"gitHead":"3142da0604d437ac2fac724f45578286f255ba86","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-exaGVHpYriRaHHZN25JxOyNvIf5H42M5AP5YRSzjHGj3fpfh1jeew2VpFWwsly8LG4TWH6zARoW55bd9xk9v3g==","shasum":"9b98ddc5ba7bb6192413985e51c6c5965d8bfd9c","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.2.tgz","fileCount":10,"unpackedSize":65052,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWS4ICRA9TVsSAnZWagAANo0P/0MXnuXUeSK/OU9BoSKM\nxZdDDCzd7yJmZDdaOPFVpSesOcZdrOko7D5XsDjdMnEC4cl86bdffq88TMlU\n8qahA1/RbQvOfc0v0vsVn3TUiJ8DcFZ2ZRijzjdsjXHNGEfV3DTjeJiJnnpj\n/4XNWnMNe4XVrR7PvXHgb1IaFrXZYYPZ+s8bDGtMbYaxdYS/QAxO5JNxOTVz\n45C1sqP/2iD+LoRXJxPILydTUGyZbDfkQXgGIrU7M4ZCnNwFMSTSLfZmabBw\nWYCZ0s7j6a6coe7BCCR5iqqiyMid2muBipEqzWElvq3/oJG3XuBI5sg/k5QH\nq6AnjUDs6T8nzRIr/OkGg8R7a3Z/BSmsWSIdbit0tQfpC/omfWLt5lzXR5iU\n7SVMX5NIDvrnHIqSc36fXw7wGM9V7YvoTbmOuochtMlgt9ZOlQd9kZi2umJC\nLu/mupG1ZcQ60S+nZrIqhxB1jS+UNOllmrPkTz/boBPKCg/rXOKOi5u5PC3L\nNCFZxCPxf5FQ6Fpe2v4qgH3GR5gHY/AgM4KePXVEfRPqPrB5b+CxBTkF4fEO\nH1uCpbbkl6jMRJC9aJWFDdnKSd+Ns1e0R/CgwLJ/JZQD+ZfgoBJf+7ScALt3\nGVUthudOfwVirlF8jtILL9Srg/E+hKvcJ7t137IkWXUY9avFyYehYFT9e/0Z\nA4FW\r\n=8pFT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD25h+SVPl7spy5X1AEfOX4h7FqPtSFqj2UysjfGj2/jgIhAKL6KOmR5m/fisbkxDplfI1ywhGjoD5awdQm/dm2Bjqa"}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.2_1599680007913_0.7664206041662815"},"_hasShrinkwrap":false},"5.1.3-alpha-button-line-height-5901.1.2":{"name":"@crave/farmblocks-input-text","version":"5.1.3-alpha-button-line-height-5901.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.2-alpha-button-line-height-5901.1.2+afc0dfae","@crave/farmblocks-hoc-input":"^9.0.1","@crave/farmblocks-link":"^6.0.1","@crave/farmblocks-theme":"^1.10.0"},"gitHead":"afc0dfaec408e9f6b57619a9f4f8de4bc0e2355d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.3-alpha-button-line-height-5901.1.2","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-JFbkcQn6eP1clcFrfKdXRhqjiqGu3YMxCGRW3y1Q2slAvAmGNy4g/t0OSjnrpCBZQbbbHSfa9gWaa4QWuMJbIg==","shasum":"50719eb53de422e06df8909843119f8d9e39e680","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.3-alpha-button-line-height-5901.1.2.tgz","fileCount":10,"unpackedSize":65138,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWhnwCRA9TVsSAnZWagAACMsQAJkdQMWZo6MxCJu9i+SA\n4uKusaudAOVsZMkKB82x2sEjLjzZgsQZ3vBIiKu7p7uEs0TvKczN3/Xyb1f+\nJrex0lKwlDyixdI26wJFLFh0itqv/yAgttSC1tLlFrnrBsoejkYN2OWm2jK9\nBEpeut6SP7pTr84VoUwGF7UAXPP2VbdwCtpnFgP1v1MQWwl7PEjjn5v4RytC\n8iLmr9rm+1+FJXMXABcYHEzAhwoGJlCYmKCuNgZVdaiCdeA6nFYJg06UPzVU\nw6Rd6i9N55MoR4qJ6v+FAyXFvSNSmdkFAJTRiY3RPGheMoN+ucJ3288MSEqT\n05OvuRs2k0+MRJ1L33LvL150XDCAPQ85JZD0OEBjgjKZzLBM0fBpCVYm3wE9\n+S/2Fep2+Jgcy8nF1kbFnSkSALkifgSrRTGi8prXMLUeNOagHdYS/sljA3k7\noTPga/tOD7W2Ys0QyRrFsL4HIeyhlS3mDaeYxb2c15BAmpAex7D2+9PkI+WN\nvdxXBNsqk/kQ4tv8IUBn6ZWctt83bmLQZwiKTB8AZ8pTluvLEQ2BpH/ZyJ6b\n0XXIuC7age7aO2yYkKDAfSjwvlke6/H4r2b6PPEOWOmU48EIpIKAma2vWErI\nvWl4nzmmgjfTWtaHIMlJp/UARCz193qTmvSqOzyymac9twAzB4WdxBIKoSvR\nNzNs\r\n=BfRH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAhzqkggrtgajql4cvXewewK7AgjbPUQJWe19lHKDnA9AiEAv8TujDeIujuEn77LlyHKyw0jX/i1E4dpSBun1L9GqY0="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.3-alpha-button-line-height-5901.1.2_1599740400205_0.6966540047587633"},"_hasShrinkwrap":false},"5.1.3":{"name":"@crave/farmblocks-input-text","version":"5.1.3","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.2","@crave/farmblocks-hoc-input":"^9.0.1","@crave/farmblocks-link":"^6.0.1","@crave/farmblocks-theme":"^1.10.0"},"gitHead":"f4f0d5946372177aebc2d6e1568b3507040d1fcd","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.3","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-OK2VnbD8DnI3JMDCqQvr5dJfxIpRn8x8inBotJeJr197ANJMlK4SIAZf6TAs2+Kpx2ff2qMrJpSF6jRTAsjkuQ==","shasum":"355e5adbc45cf4df014ef01649d47196ebdc8cb9","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.3.tgz","fileCount":10,"unpackedSize":65272,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWiGCCRA9TVsSAnZWagAA0/gP/R9495ZKYl7F8s5qOQqa\n7gm5curpwb1F//ybajQ5yymiU/1AAjcHVABctzeUt15F4twC3C7PZmi/6CYZ\nbAVkI6KUWZ4rfO/KdAAFxsYnmr3wltOWUcrYeJa/1gR7JI8S6RC1+WhjxHFb\n9ZXYStTHIc5EOppoWMaBHqXh8ULpmSAfixvTL7n2meOyMD960YR1+nBwF09I\nOshvZk8LUp6hu5TIqWBvqPNYC8Sxek7G3OPKxtJua24amaaUrkAFqPdKoORs\n0Mm9dlHNVaMJRDI5vXK+g7QIr/ZXQc9PBmjEgWovSATT/FoVBGVQrXv4FdwT\nHPXDr2MRqtKfBj+ls5gJVpC1lLtHOxjluyr3+93crXpSdzGNMDrMlKtvJEPe\nRJhfrmGAwaZ0AvDb5/8xaEg5AY6t7HB3hz6W9qPn324Ryoj52gcXexubUIbz\nkfTt3yr+nzM+14kTteFXTi/+l7FVmm29UXYbSFMz0CbxzjqppW43Xsx0g6uh\n0+i4y7MZAZUL7r0WgrY3PfmG2dJMbUDAh6w/MB9m2lnQgR5Y9d487h9lIqJY\nXlmvoqNgNaSn6hLAY/ypxHeCPyZzZjfuP/Yezt789pb4hgIsnLOEW0trxiaP\nYeLTskYrTPoF6s/elWnUtP4TNk98DZUE+XnuFiGz2Ru8BR0MjZy/QlF8AA++\nBoi2\r\n=dfot\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF1+3fIci3peutvxx0Ce0V5Fc6TutW14I8Cpu8/gCv74AiEAkUHc08mO0exgEQsB1WH9m2hAxA7Z/Fv+ijiQhTiNz1Y="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.3_1599742338096_0.349787945552934"},"_hasShrinkwrap":false},"5.1.4-alpha-esmodules-5917.1.9":{"name":"@crave/farmblocks-input-text","version":"5.1.4-alpha-esmodules-5917.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.3-alpha-esmodules-5917.1.9+fba2e8e1","@crave/farmblocks-hoc-input":"^9.0.2-alpha-esmodules-5917.1.15+fba2e8e1","@crave/farmblocks-link":"^6.0.2-alpha-esmodules-5917.1.15+fba2e8e1","@crave/farmblocks-theme":"^1.10.1-alpha-esmodules-5917.1.15+fba2e8e1"},"gitHead":"fba2e8e1c6303f559cbf01d9cb3d038c18b455ca","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.4-alpha-esmodules-5917.1.9","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-lxkFX7UCKYmXFowQCKFoDIHDkgHyS2kwDrZ9rScTatlRwRIUy+DSdK9wTPqHVjBxNufAqZ5zsAm7GjLCU0hsmA==","shasum":"d29ff4e72f0a7b994e4bfd40e5bac720a96e6601","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.4-alpha-esmodules-5917.1.9.tgz","fileCount":10,"unpackedSize":52804,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhw8vCRA9TVsSAnZWagAAVCUP/1Go8Ya6jCQmfAMMZMZN\nkanMAr7ZrPFU0xskYD2eOIpyom1pSvOXnqZlQBc22S6KgUqtGx6mde29VkH8\nsq70t3stmoinayg7koOQzqoth7sZvdfrDjOiYAWsjXjzVJoQkxJa6+S3jfLR\nQl/oxsOKqiPtCghNmO6kXkyiKvI5vZxt2OxDRi6i0UUc+K77PU9racQVBQq2\n+V5e7hJl9r6Yhmbmb8rOoq85UselhQRhMTfoBJc9+QfOd26YtOW1vjYejTTo\n7F4gNtOPjsypcXaaKHzUcCKiFYGGzXMft/DASKIgOXVnZbJ7pfpTaDbVKVhy\nWiTXpP3Zag16zNozxXFSo1aLNRrLG9nSedFcdfg52tn13j5cr3A8RPr8Yj4/\nZUjWXfGkSnt8sTUJYCrfIzSqLJC1GLGiQlM9CNRLBTiRC/yu/hrK+JoBFkem\nEtSFJaKLj0e2nTuajD+q7uPuv8zG6L9m3RAm+HHD6UOAd5Kvfh7lSh0CUZ2f\nD8sNLhdhtv34R91k38y41Gow9CFqRzXtJ7uV/C7QAMoWpg7g1/tjpngWnE9l\nCEOpO5yXUnBpSc9n38zpZ+G4Jq1dPxQOmR13ukKm3VWiuVqCvcLC1EQ69BL2\njD7UAn346XjZmVYraPpP07h/wsPyxUzfH16XHONB8UdVeexQmVsZo1Bp/S0a\n3G86\r\n=FAaE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDe4ryihmVY1UPXCMdGoH1abP8JUgQZbyUYcnbF7lK4SAIgO+pBy770dPUkXqJD+RGJ8TSadM7noPZ/R5+r4XwfyhA="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.4-alpha-esmodules-5917.1.9_1602686767098_0.04828287395561848"},"_hasShrinkwrap":false},"5.1.4-alpha-esmodules-5921.1.10":{"name":"@crave/farmblocks-input-text","version":"5.1.4-alpha-esmodules-5921.1.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.3-alpha-esmodules-5921.1.10+70d2ded0","@crave/farmblocks-hoc-input":"^9.0.2-alpha-esmodules-5921.1.16+70d2ded0","@crave/farmblocks-link":"^6.0.2-alpha-esmodules-5921.1.16+70d2ded0","@crave/farmblocks-theme":"^1.10.1-alpha-esmodules-5921.1.16+70d2ded0"},"gitHead":"70d2ded0f0da8165b6c1fe00ba671ff9d0a9e0d1","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.4-alpha-esmodules-5921.1.10","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-yVqf7ubHnwxHhpJhCEPAxEewdQMqrlwWnnrciuZDg0IxdyEgTsw/7fogdWf/JtN4KKLvihVpZidNt6MWiOtuPQ==","shasum":"1705274835985c20b4e326966febf7daec84c824","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.4-alpha-esmodules-5921.1.10.tgz","fileCount":10,"unpackedSize":52806,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfiE75CRA9TVsSAnZWagAAyb8P/ArJFB56Xzluh9fhbz2A\np6CvZ0HKhBL4X7EWirXUY0O9zbXixcdwxeCyQySrUntF3tlKv+yfkVwZPqDU\njkh2inDroktOZ4NDMI3l9yq9L+U9yYcf1Hq+u8KCLhDBe8S1p5rPel0VRP8W\n4c88f4x3H8LOsGv4CyIGAizdKbG2dNaHgEj40/GwpFQ7skFVozFmiTkb7w10\nZMV/jUBAwtOWQTPJHSgwCkh2tyoqB7XoOxZpLyW7XU5tswBma2JoRctMaQHy\n5i6Mjoxn4xgAnido1Sq9rWRvnz9K0+1VJ+K3a/lgPWWwn9z/B8LxUwewi67e\nDHM/0As47ndZNCRF0PlWjoBmJ4ZOwaOSR70rBi6YwY3YTdILMpsIEUUmTzqg\nvK8T69z6nzJItkswskLFd8T4XrFgZOMDQifkZFr27YJpJfRJes4gPUTN93Xb\nsCaucdLapvWsrYvS1CFXr2M5jWMQysnraAOYnKNFjdIRkFno/ZtRlf3dIMTp\nDi5o7ZtWDuWCbBtBw63gf7TiFzyBqW/UK1PMiHYJYbRrUQ139iybCXKm0U0Q\n2b+KBZboEbciUUxgtIXYe5z85tamDEOWyrOEceBaZqedc/4qaPGgGbsQk1S4\nz06i/kTLcagU3Dyz0InyypxuMIVvQlsUOUYJU9cNSnVGZUOtRmEDOvUFlQCF\ngRFR\r\n=NaQn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICkYf/nsnx3CQe984Pcm5oiKfH97Rm2P43sDm7nZzZXOAiBYQIEzWOlKW+0u4cIm31vIcCUbXSz97qTwD3dld7EFAQ=="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.4-alpha-esmodules-5921.1.10_1602768632509_0.9214168713936952"},"_hasShrinkwrap":false},"5.1.4-alpha-esmodules-5925.1.9":{"name":"@crave/farmblocks-input-text","version":"5.1.4-alpha-esmodules-5925.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.3-alpha-esmodules-5925.1.9+b26b4097","@crave/farmblocks-hoc-input":"^9.0.2-alpha-esmodules-5925.1.15+b26b4097","@crave/farmblocks-link":"^6.0.2-alpha-esmodules-5925.1.15+b26b4097","@crave/farmblocks-theme":"^1.10.1-alpha-esmodules-5925.1.15+b26b4097"},"gitHead":"b26b40974c07b25d7e73cb336962a061a93f02eb","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.4-alpha-esmodules-5925.1.9","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-4sGXBmzZ5PWXeaicYIVS9T+ek6QoHnAq0h9lEsJqh5tCERvFCnWwYFeyyAP/lhZsb1Pacjt8D2X6/qkv9rs3Pg==","shasum":"88e330752bc4ba618af1844ac8599ba7b3cdaab1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.4-alpha-esmodules-5925.1.9.tgz","fileCount":10,"unpackedSize":52804,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfkH3ICRA9TVsSAnZWagAA9gcP/iGBlQcyateB4APQaITn\nsZK9MjgLyrgGmiozZKKiG0mt2Dun52zLuPuWhN0ntH6jc15lF00Uo4cYgF85\nYkY2E1ADJKzOUhvKpom43MWbZcr/A4/KsFeBDXMaygtCJVDgqpO06Fx8eZdF\njWwJKfhzj3j0GHDyLi1Y/UWq2tOy5BCC5nPJ7rC6wLbO9LMdUmci1IudQKpV\n2rpzIPHbGkI9OKYVxPzZRs+sSzioWP+UuIiMwCPdhe89drfgOxJJYQBINfox\nZIp6Kuofl1w349jDBBqW8dQW9S0itzwNuydq3vMIogewb6/DWoA9w/AzadnQ\ntUP/1GUp8jODjCOnNFdRYQ0MuxSoAO4nRK3zE7gvFoThf73ekBYiEWVCXZ1R\n5E/cYefKGLEP+xsd21M6pHphl1ZpyzZvN3gsl4XTmWyUm2LxeiDxyfX5RD5N\n+rKXyskIzq/Bhum3Zb27DmHuobQjZi6wS5zTpiudnZBdogauF+TGy0BMdPoN\n8KXLK68BJTHorGiFesC2URuGLZ5P9wbUwfQVCahuEElIl2EuiF+LNQPJfkGO\nY9VygLA3gsFr9npRoX98mzbDkr0ECUgxxG7vkVcqH+mHUPZAIXhgeuujz8Ft\nKY2aiLYm1Mzp9/T/O5gPVjO31/mn7/wZO8GoFrveyHtLydvrTe5wlwSi65WL\nkIPO\r\n=3j9N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHHnBbzzg1Pt7IgiwpGOCEFG4s6sCDeLfgPgAxmrq7PqAiAyeT83ULyT73g8nOr1zqSkoj+fQkTNVPFk0OJfVj/JbA=="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.4-alpha-esmodules-5925.1.9_1603304904519_0.12424937075539977"},"_hasShrinkwrap":false},"5.1.4":{"name":"@crave/farmblocks-input-text","version":"5.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.3","@crave/farmblocks-hoc-input":"^9.0.2","@crave/farmblocks-link":"^6.0.2","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"2ae9bc148a9cfe2a81cb52e32130cfb3a4cfbfc9","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-7GfDeGNCiGmKSHf/A31CJ66GRzuK/eoB2srNKCVbXogHQojv9Fqh7JdneHKYoX037+mCV0MYHqIU0HRZDQ4gEw==","shasum":"f54b2aa2774b3fd2981c23d22fe8cfb7b625b5a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.4.tgz","fileCount":10,"unpackedSize":52851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfkIv0CRA9TVsSAnZWagAAkhQP/jUy3ESbMQth4e4gMlv2\nZWX0lx1xNmmT4dxwwhRP1ShhwuvdJxtq71+Hliax7KO3d/cGF5yxlp92Q4bT\nfRetcUfO8tU4AOHGrvaE/1lsHM0qVMK3Z1vicNxKiikjmBn5QqBVDJmsWI65\nOQ3C4SpVQ4aRgkzW+fR5UKmaew3hn+Bw2QOVeR1hOqswJx3sV00KcIdc3x9e\nvYw5GCfAxoQL+ZEJh1a8+cNUeaNvpNwP7Wcz9R2UDy0fTN16LujSvvD1+wAb\n/1Y8k/F6vClmqfIlKQ9LQWbfYJOkpaxXh6144W8vGjsE5lWdwn6Op4UNALRO\n0e4wl/UsvA13OpJQ14h12+A14s9ckpGBEFAuBEFbxSaMKFgaMcANhkKHrCmJ\napOAhab3DC7BKN1Fn8J/a4KjW41ov5XSvLGhtWd32AxPu/aEb2AasqgDMa1F\n2zWssvxhjpfp3p6yE5P/TwgCdUNqCj2jSb4rYd8pOnyMlg7JpDDNkB7trCKu\nMh9hlhLMM1be090z76ilIeA0Y/+aGamr3yURp4dN/LHYDNBgVFCFK7tkmICC\npC7wK+0r7yFWBzsJ/n+G+EePS5PW/zeTrK7dJ7HKj9kITOZo+iFTa+FWuZ/1\nV+8CzwKcoR4Izg2JRmWEXoy2KGb82cQEWwIjda/LbtznsJPZj45tR9GMqPKF\niglj\r\n=PMvt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG4Mvw2yDTu0wcRmH7vMHdNzwgehnXq+RGAp5+l58FTVAiEApUGA6n2V9SSau4NVm4KXa26Kk/kgygZBeZRCHdOvzoc="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.4_1603308531551_0.700390714283561"},"_hasShrinkwrap":false},"5.1.5-alpha-icon-publish-5935.1.5":{"name":"@crave/farmblocks-input-text","version":"5.1.5-alpha-icon-publish-5935.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.4-alpha-icon-publish-5935.1.5+867e408f","@crave/farmblocks-hoc-input":"^9.0.3-alpha-icon-publish-5935.1.5+867e408f","@crave/farmblocks-link":"^6.0.3-alpha-icon-publish-5935.1.5+867e408f","@crave/farmblocks-theme":"^1.10.2-alpha-icon-publish-5935.1.5+867e408f"},"gitHead":"867e408f76f049072ac6b6512868005b088f3ec1","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.5-alpha-icon-publish-5935.1.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-GNPe7EVeOGE6/9LICfAomidtuABDTDBxezSzgaFFuiaD0x1uOY58/BuLKKF3xRFx9E4pkH0LcWCOUIOQ0HZ/wA==","shasum":"ac59d5b9c9236d157ab882c7ce2c0bd85175d7f4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.5-alpha-icon-publish-5935.1.5.tgz","fileCount":10,"unpackedSize":53036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmq6gCRA9TVsSAnZWagAAUb8P/jjeKVdpZofNOt/35MOO\n+1c9qV4QLyvfeOoJ2mWzN8WOWjDh9QGj+4gPqhAdwmyIKX1PkLMQuZjCGDME\njHbW76Jb5QgsI8jKtuiPWIZunGbGRNzXyQ5lNAGvr0gdQg1tVSCfBOp7a5il\nA5b/udJxVsKaGz9dkuuZ6NS827GOsC+lswmIDmDIseM1xOENGaOzipG96h8Q\n7DKRm+S7KIQ7Bd8rPT89o9dKjSyw2/NI/YoYSkWDhQVWrs8sugWAJWGX3qA5\ncqSqS+I8Dq5pJ/3+x1aHpOr9Xd1PBNHr54w1etxuZG3RspEI82jEGl9Kc9ia\nsDX14DesaW5V4K4rh5vhTvGrP+u9jGVjLfRbvoRbkCIC70mCbblAeiBpzaKn\nzPI04SuQ8XAnjMXFtO19TrYrQfZC242OSe6tujZqx0sO5quzs8NzRwDRc0nD\n/6C5ga1+/agrqCiO6tfOHGnqjYWHbntAkLRNDMkOI5UiKWR9rkhnXLvyrJfk\nqbj43H8UvzLHQhg4s7WxgCHwmh6+UjssKGJHGLFAzDDmqYmtQj9Ra7ihtLkJ\nWB/qKmghUFsaJvRnRzQMRm9H65S0VxWRxrMd8n22aySdInsNp+YNHJTph8O+\nVi9GXOq7sJ8pvCN41WZmJr8knhimYsraHWe8H24sgbv/7NieJOvMzQoaOwo4\ngVSX\r\n=UqTu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQChcQiLw3qQ26q9DabBm+D4XozPZOZoEwShglvC9HtwlQIgfDgly2Lru/Ry3LdnZA+aym8UE5gddzjl4lco5GW1WKU="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.5-alpha-icon-publish-5935.1.5_1603972767716_0.31196573291078433"},"_hasShrinkwrap":false},"5.1.5":{"name":"@crave/farmblocks-input-text","version":"5.1.5","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.4","@crave/farmblocks-hoc-input":"^9.0.2","@crave/farmblocks-link":"^6.0.2","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"82e001ed74484daf52957946b6e4a022cbff24e9","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.5","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-bTec+4A4QOCW3vsY77J2uma91ontu8xIl/Hiq4t55T1Ay3AL8d0Lf3f5qbvDeWpA1lSoljRlYUvV8NxS4NxBxQ==","shasum":"721e0e97d9dcd02667b9ae1c9f08d0e01094649e","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.5.tgz","fileCount":10,"unpackedSize":53071,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfms+MCRA9TVsSAnZWagAA35oP/2Biv/15kD/6cyozMpzp\nH+YUAZ45Ue90JEEvWJSq4v2uPwOB0muOz3m/CuRJZbdIWLSIhbe44Ck9SDhO\nLP0RFaRQr9jf+7UGH0So8n8kCTii66HbPqXzY5/GaDohM3QTogSJBFRYeevl\nG/Dn/fLEmIbCYU3P8GntWoZ1mJfXb4OzfawBOpQOBOcvGeyHBo3Ytk8Q8OKS\nBWTuCTh/lE6+5X8efEhHUqvxTMbiiNjpeKMTl+jlgCktOn4Kz5KSjq76+Zi5\n8GHniB0xoVx5ZP1YfSJXOWdjbKT2GncfS7nbhzrZdG6HPzrMtbjscGs//SRR\n+msweLCbAO52T3enmPh7qBQOO1kHy74xUvGOpRbFoWrfvqdtga266fc0DqAH\nPE1J9gTWn2SLMR+ZNY/NEs+/YyTaRXNmi532Z78h/ZtlA/ScpTi7ZNh8a69e\nJv7xHiaBqDF8BdUvvyoD5lZa//5DMTCSXciWwBSbFAyFxnB/QxESZi7QlHTb\nTYGU3uAq/xZVG2pz7NBEBAfgC+c83iBH8jaULBIjD4w95Zg+L32NTfj33z2Q\n+gVq3k6f6nPbZVnhRshjlj1lAxfpSbQlLHBM+52KQb8XlkGdz3B0iDDIJCYr\n2eQlW2mHWlhjibuEKa0dCnLVShBoZCSC55JC83yB7azaAe1ZLd7IsfNTCpB9\nLTeR\r\n=f3N9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICEmdFpHCRVHt6hjGsneF0ULyNL+t+9BxOKFWVO/h1//AiEAhTjcy7yuzJC7Zn3fnRG/v5A1S2WPsPwOXifcFMXQvU0="}]},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.5_1603981196391_0.5994773561652427"},"_hasShrinkwrap":false},"5.1.6-alpha-table-redesign-manual-1.8":{"name":"@crave/farmblocks-input-text","version":"5.1.6-alpha-table-redesign-manual-1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^0.7.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.0.1"},"dependencies":{"@crave/farmblocks-button":"^10.0.5-alpha-table-redesign-manual-1.8+93fa0935","@crave/farmblocks-hoc-input":"^9.0.3-alpha-table-redesign-manual-1.11+93fa0935","@crave/farmblocks-link":"^6.0.3-alpha-table-redesign-manual-1.11+93fa0935","@crave/farmblocks-theme":"^1.10.2-alpha-table-redesign-manual-1.11+93fa0935"},"gitHead":"93fa09359d4f4108a68b5c1b5dc04bc65e8d4000","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.6-alpha-table-redesign-manual-1.8","_nodeVersion":"12.1.0","_npmVersion":"lerna/3.20.2/node@v12.1.0+x64 (darwin)","dist":{"integrity":"sha512-iYTBJXW3Y6sfenOeUPcsKbShqZAW3NRa9dwP7iT8PT53qv4DRcFSb+co0CRgeGHB5aMgZ9wjfYsxWEOvLRRPZQ==","shasum":"a82b26dc6d033ba448f26fcc27b0c9e85ebaeac6","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.6-alpha-table-redesign-manual-1.8.tgz","fileCount":10,"unpackedSize":53279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCXA2CRA9TVsSAnZWagAA9cwP/iESi+OJbVP81mNdytIe\nSWZ7f/6O2+G/XS8FhWZXzKPDzHeDYQGwFK9PCZp5lgFKhYLnl3GBt9kzOBqd\nw0HKgTxNK07LKEw0whkXzHbeD7mIVpRRKZeW+65Omg17Af0ioeND0Ibe0o0m\neUalSvHzMDknvOMZW0MrqqVtfnAxCO8upZik1FeAMC0Dq02BZQxYS0EJ/psO\nS4ykEyNVg16QbPD6REEpwlm93Kk9qwIeMp9N6f1YhvHxIPbu9sDSvX3v2v5n\n9iof5SfoV4R80wOGhWFF1nx9TCvZtmY7w+JRmw7EdMTRMvrK4opiY6yrkdig\nhSXw+2mNSSKaVhG/fFq5vdsCe4+1uw/h+ANYlQgtFG7XI9p0tJ/g2WDRWXP2\nXZTG+YnmL8I8XNZVlDSv12Y/MD+WTDMEYaVJc1s76PlWKIAvQmSvKhvib7FE\npZ1vrWSjJT72jGCNm/5COtpahx7dT7y4+xU6mfxysaupMFicG66NFNI34EKk\nBaDoj4Z8dDix5BeM/gkpShh1apI4tfXDfSX5eeveRICGKKmW30TALAnPDVfn\nqLYgsWgbsRJVV1csZsd6aEotn+1SB1PEF+IuJbtEHZbtsS03dz/oPblrIxBc\n92TPY4N+OBhSv1u2WBfCbirYDiYmUlwhFXa85CKSPtZjd2GYCkgCTDHLzMHB\n/z8C\r\n=awik\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHl6n3kMZTie6yB9RoxBWN91lG2asFRFxSoYDzYEhm0CAiBYqV1Zoe7jwuI8gXc+jBgixIcytFbHxoXvYMENrIE0hw=="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.6-alpha-table-redesign-manual-1.8_1611231286228_0.3515477714057067"},"_hasShrinkwrap":false},"5.1.6-alpha-update-deps-032021-6011.1.42":{"name":"@crave/farmblocks-input-text","version":"5.1.6-alpha-update-deps-032021-6011.1.42","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.5-alpha-update-deps-032021-6011.1.42+b07aa4ce","@crave/farmblocks-hoc-input":"^9.0.3-alpha-update-deps-032021-6011.1.45+b07aa4ce","@crave/farmblocks-link":"^6.0.3-alpha-update-deps-032021-6011.1.45+b07aa4ce","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"b07aa4ceec2dccd95e16d93e56c46c802eeb03f7","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.6-alpha-update-deps-032021-6011.1.42","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-DeIF9jIsvtnILkiDsYUeSFq5UOQRXP3O+8IJ6mVf3AEmespFG/u/ySJXQnFVMC/sD+FNrPBg6K2T41d6TQeLEw==","shasum":"9af9a1dd13c0e54c075872e6535602f36edae255","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.6-alpha-update-deps-032021-6011.1.42.tgz","fileCount":10,"unpackedSize":53351,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZIc2CRA9TVsSAnZWagAAOe0P/0rWOUSWvcGoUzpYkqOx\nLqSEiXSSQTofbQApbaLEAiGSlTUH/b3/K8sUUcPTF5dyeYnxF6iTtsN2Ku/T\nmYItCbe0IEiSSQcIRAvimg1cVAY+02TpQKMnq2nNDhpMVjXWv8DRw2sm0Xqn\neQZuYbsBBAeGA8u2eqaUNNMcEVploDabrbAWTWOqnQJHl6NHdQr1cVvjo56t\nfyjzHliMpQrVf46bzf7b6gZZE2a3pFMv21m2e8BgxGhDw3xCqHqSEOOxnaV/\nqxYBAbBSFuxZ5LImB0bKrNaJU2LAjQDThhFSr2ytDg32JiF/3CgY3sqVPFrZ\nJFoiWS4FhCTLV8W35+L1R/4ubDxDonQbRs0/EyegvXOdiRasqwLGyqS8a6sp\nCluz/Gmp7guZxXEORnfjsesAgEve9w3DUw0kNq4tt+qm5z61dV94ij17xzmt\n6m7bu5bfU03X0JGQosXP2Wf6xbFOKTHe/XZLuaTcq6YoGEPpERnT7WDiiTJP\n+7tOB+9AKqJBZImKi2vJJMNsbrRlkA7KWbsfiCvMW6a15K5Nxj9Y8DwO/FF0\naDBIj4thChcm5X5WJEtSe6JwS4k6XXCKkPC/wfsAb88n+CfKTQRd+WyRH8o0\n91onHC2v67vCwQqs6z5S5aKmFRpAA+kHZvC5c6q+cTRqd580shCncBWohL44\nUW17\r\n=rBg5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBkIR6NNAwrzdd8uIvyMaRiD4mtLf3kyb58iV1bfcPPrAiEA0GBkGJDY70zKl9MMG6mTgwjc/hPlrInElbwbwBs6GpQ="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.6-alpha-update-deps-032021-6011.1.42_1617200949673_0.5396336503594406"},"_hasShrinkwrap":false},"5.1.6-alpha-update-deps-032021-6016.1.46":{"name":"@crave/farmblocks-input-text","version":"5.1.6-alpha-update-deps-032021-6016.1.46","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.4","@crave/farmblocks-hoc-input":"^9.0.3-alpha-update-deps-032021-6016.1.66+e38ee0bd","@crave/farmblocks-link":"^6.0.2","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"e38ee0bd8f39cb96827f32fb1368b25cfafb58e8","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.6-alpha-update-deps-032021-6016.1.46","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-2D4qc8CycyCEABToCmR3+R7iEUQTR8nqfpjPS5HZCViVzoZbMD2Q1nKV+bGtgmoZWpvQFpn3M1xkdhEODvta/Q==","shasum":"77a93405fd37d15e1a9c5429eb93312ed3744e9a","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.6-alpha-update-deps-032021-6016.1.46.tgz","fileCount":10,"unpackedSize":53263,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZKkYCRA9TVsSAnZWagAA84UP/09DEhz7qw/hoONjCWxi\nTCFPnpXcp8JA9RJKDUiwg7FDqbHu1bA8yZ5iyEI9dH8bE2zI7hS/eEhI6qNQ\nU2vnDVKsKpwmxlMpYjX4KWJyn7/R7J/HNiIoNxx0rK3A00B8nIS5ceYwwmb+\nUWn47Lk038g7YO2Wel8CDpCdnE/nUUuVNm/ZNH6j6NE/XZ7xuRNy6FGQcJxL\nBEVejU7IQjRmqpzy2jwYLQ/FC1rcMOoL0nVvAR/9DVIQZ/d5v3jUF486Lpe2\nQ3zvUJbIQlpmgAUVgP1WFob8DZ5OeQlKzTZ8nNLcYl5XSKq0bHC8dg4E9fAA\nRB+YatWdtlcaHryfLxhwhEHYaLRJumb61s33w+uyeCDFoXPAF/crNltfn+6d\nmdkrLP4hR1bV4ehXqZi/lskjW2AkNSvc0cy4aix3N1VHXGvjF/kZgeHgDxhU\nW/o+2ZLByzeu5iWtvOodOuj2WBbKEokCtQyB05CrZ50JwYXgiobzqI/vaDu7\nVJSwT4EVXHLSOqCWT4hYp68NkKaVvmTYlrfO13E4XcL/ZpjTAYnijWBPMEZx\nX55qb8krpGVxT+Wg5ArIWPrUIfpq7Tyb1gKrqV4Ax8BJTLe6KCjuSDAoNnDu\n+hR7pb+wkh2dTDv5hUNF/0HwWGIyaWALUd27floOBBRBT0VFqmIaqrQOGOJk\n1WS6\r\n=Dvyo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBTkUWhWUz/o6qbDCmxG+FaiiS2+9InOzevDp2DundHOAiEAuyTzSt4x+BpM+Zj/x3nHaA+fAzFy8yNJTC4i8bbXdok="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.6-alpha-update-deps-032021-6016.1.46_1617209623936_0.37997138974930356"},"_hasShrinkwrap":false},"5.1.6-alpha-update-deps-032021-6038.1.59":{"name":"@crave/farmblocks-input-text","version":"5.1.6-alpha-update-deps-032021-6038.1.59","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.5-alpha-update-deps-032021-6038.1.59+c16db8e1","@crave/farmblocks-hoc-input":"^9.0.3-alpha-update-deps-032021-6038.1.59+c16db8e1","@crave/farmblocks-link":"^6.0.2","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"c16db8e1588b4b56f83b9bd54634c32152c9e781","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.6-alpha-update-deps-032021-6038.1.59","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-i4Qr0w/vnI+4MTJr686WmxV+jgDBYGrbGk12oDvheHiLMVDlcePM3SAIaB/hBBUszjoKNkOLpYcpL6zeeNDsSQ==","shasum":"807e07271191f510d0bb96ea694f9868419d31c4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.6-alpha-update-deps-032021-6038.1.59.tgz","fileCount":10,"unpackedSize":53293,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcKi3CRA9TVsSAnZWagAAHIEP/ix8tYlpgO1Oy0mp6voy\nA1RptIQbwFGL9JE2DqxtmI0yoS1XbM/85rDIl39liDztnL3VyhicaGW41RRp\ns7SLND7VfzH+SHJTuko7VwesWGN1ZkbixSpE4iO+DEp7cJMy42xvpu4GTupg\nZRBYHX//l9wqe6d4TGT6cOk7d+N+Sf7qJRjWDNF73ZgeBujl1GmzAwqg8VrJ\nFmKR51VvWGGIjzsuObfSG9Ijurp22t1Ny8IureYr5AyRz0TnWmA8qGqVlDm2\nCfU7qVs08JhS804huuavTB6dnKUYlElo5nNItpcn3xqGOCdRNezzMWNxgvhN\notOydxgEm6bk1BaDR1WUoH061A6jbTM/h5VEjTQcw2H7AwEbe5Lzd7HqD6lq\n4iP9OQ+u+k12fo0aLZ983+NHLBjpQMSt88qubRH1p7a7s79nMx9sGv/1pJht\n9ZElBhAHoAlfelHxAo4/dqfmUbDLigalP3hR6neOmiGnxmYZRMkpjFVyLmC3\nXIuq6AjnahL7m7kD0M1fEqxnqdB5s/XguvmkbtmNmKoSTBMENrlmY3m3RQl5\naMzBUmxmIfBV7bvrJZyf4E+IQoR+yCP449XAxDam+nrZDpL1Z+Z2OsDyGxW8\nQqlNo1c0Vg2kPthfSHd0eTuxkX3eQAzwVR2C+4ECGbhlqxt+pV9mu5WKTfFd\nxRb5\r\n=aviU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBsmwp5TLW4i9zl1qH+MKqS1eUiNmino/h/VDiaEcj5DAiEAgHsCflHp1xU5laJUlquYgi9PWnf2HYE4G+8NKe1cpDE="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.6-alpha-update-deps-032021-6038.1.59_1617995959304_0.9432355154500716"},"_hasShrinkwrap":false},"5.1.6":{"name":"@crave/farmblocks-input-text","version":"5.1.6","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.5","@crave/farmblocks-hoc-input":"^9.0.3","@crave/farmblocks-link":"^6.0.3","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"6c363db25b708288d932745d21cd88d4e3bbce63","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.6","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-3x0brcA4VJ55YIzffitHsgT5MSo3UZ2ocTcvta/hZ3yzDgoxtqMweAqljBeV9xebPdriz/vP22CrM8yL72nBzg==","shasum":"5dcf0882800076d04c42a65d38252bc06bac01ef","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.6.tgz","fileCount":10,"unpackedSize":53381,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfZcYCRA9TVsSAnZWagAAMwoP/AmdpU19SfiRZsQwNoQG\nLXSPcrPqM0hoWtTBTLvsPfOsJ4aUQ/1BdpRlQDEJGtCV3VKEGMTlAo9hNCfa\n/Iy6M2R4jNgYvCo8i5mID0rNEUCrEOL7VOdwPlNXuXHHEEPDAETQE0YHFAeF\npQZakEueN76KILJygDW7qAAkpmxWdJ2YYzA1ujzcDiUYA2edDxjnFuKOZjy6\nY3JPHlzr5k03ELJdLmW6RMUUxUINlO/fJiagOwz4oJd8GbfQ08SEaFl7lrUB\nSLmqt/vzu6rtSXbugY4/cKVjPNMg5/apRDfn2WcRLLhWcX1c5lutHswLSMbk\nauSKVEdM0/PRMZosPJx9SFRlVL26Zjj3GNw+yfYaCxY8BtR4gI2MMG3718ZN\ndC+C1lZkXV5vCuBeaWg52cGZ54teo5JvKMsbWXEs55gBx/U0v8GzPeURAUH3\nnKqYYZ4vGOE1k64mGHHpJfhuJy4bGfXK0S03JQldIIM5tNOHndwYRamPdlSv\nZI4QusUsoiXXsyWPU9fgMeRbr7L+jNmbNtBt2o1hLHU9cLAi9oDFt6668XQ3\nkuaHLeLZQleRCDswViaUnzmjBVntZC1NvplH8EkvDeMnNydFo7jaOURMYTrk\ncFk6UEyel+1lweG3dZHY5alheZiXIGTG0BObdjmbpjv+rKs26w6rQ/SRwliR\nURWl\r\n=/eAt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZQdO2OLMfVfjV0glee+UMVm19h0FX90IO5q5UvxbGRgIhAKQMyql1L1pv6CY3hXJCGuDM/uRlN1srDHghNKAHWQzi"}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.6_1618843415698_0.5377102329497867"},"_hasShrinkwrap":false},"5.1.7-alpha-update-icons-6066.1.4":{"name":"@crave/farmblocks-input-text","version":"5.1.7-alpha-update-icons-6066.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.6-alpha-update-icons-6066.1.4+97b9bcd8","@crave/farmblocks-hoc-input":"^9.0.4-alpha-update-icons-6066.1.4+97b9bcd8","@crave/farmblocks-link":"^6.0.4-alpha-update-icons-6066.1.4+97b9bcd8","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"97b9bcd8789de8d9c98d163dd9d0e3d929ebd5e8","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.7-alpha-update-icons-6066.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-B+XLQLONIC8R8cxezfe6iTqMCJSe5dfZduw+Ip0uJXpEVseb6WlxYzJXW3ZCII27I51QMBleek2UIfDYdvHgOw==","shasum":"a2040125ddb24f532054fdec8290cc32614f8134","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.7-alpha-update-icons-6066.1.4.tgz","fileCount":10,"unpackedSize":53529,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiCjjCRA9TVsSAnZWagAAKaoP/RuIW7g9boJXRiGgttqO\nmDK8Dg70KlZj7fz8ChKB5yk6tdJx9DQfNs51iajpEVYQwPMlN+zt+lBhyZAU\n2GhbiUnBr30M7iNbxbUoKFRPFuPUVQcrESvALRGm1svnjfn9EkPgc1GSS9b+\nc1U38ux5UNFOCXuCRhOVfrPsRqNd5kjRCm5M76FjGSldenDk3z4EAqVuk6Wv\nSbdR0LL3RAF97SdhKjQ+UxdHtwX4P5V9weKbw+axdpG/RrJ8BdyL+6oOU1Sm\n9VQUHE2qpI6b/WVWwWrB0wYpeR7sbs7lcLJ51XOTdPqNrSXHunroNjkBu9IW\nl9yqDN6OZjWUIYcDcMcVP440IF97XDXtX81g7Xx5/cB/pucZG+3fHUk2IVMX\nSU7Q0mBDkIvIs/PA4VKxM446rPifBP2hHXYPsPkHdXJ9oZtgZf9+QDZKD20x\njRGKxAbnvlY5GN24qDBVKaWXrxvKVK/+7DJwbGhLbhzk5Hup5BqxNc6nvqwj\n7FgfDMmlRM19G/UYXS43E/cXVH1OjROorRdE1ooJnCG9Rpis2u0NLH9oFt5K\nmG7yTSAdsymSTjDyZWdnFepJ6Sv+x3k8kCsC/XQFfPKx3tUvKURzBB4wIJka\nE1rX7DsVXUH1DE4T6Gz5wW0fQ+eJPjk0m1vNO774Iqmc0wG7yxTx/79D/ZKI\nBvYg\r\n=P1dA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCnJbaBZYmWykW5UJ/e/bNG62+8NtVuuozrJ9H077TgPwIgBrCeep8UbZ4dhU186XMXnGvNSgcePaxfTuUkMKUe7Xk="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.7-alpha-update-icons-6066.1.4_1619536099135_0.31263331804204775"},"_hasShrinkwrap":false},"5.1.7-alpha-update-icons-6070.1.4":{"name":"@crave/farmblocks-input-text","version":"5.1.7-alpha-update-icons-6070.1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.6-alpha-update-icons-6070.1.4+2e7c4aa0","@crave/farmblocks-hoc-input":"^9.0.4-alpha-update-icons-6070.1.4+2e7c4aa0","@crave/farmblocks-link":"^6.0.4-alpha-update-icons-6070.1.4+2e7c4aa0","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"2e7c4aa06c2ce7795a675a07dfa519380c02f03d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.7-alpha-update-icons-6070.1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-MWiIgimcx2xwy/yGpM9zqUPOUnX19r/4bIkPHXtHrhp1aB/cnifkrKET26L4gTfI41/Mu8spbR4N8Xo95HZsbA==","shasum":"f660a7c74272aaab4df72a716fdc8f43e179dc78","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.7-alpha-update-icons-6070.1.4.tgz","fileCount":10,"unpackedSize":53529,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiHkNCRA9TVsSAnZWagAAGjgP/19qkdtF9DCrE+uT6K7q\nJr/IBSyZBg2RiaefQeUll4CnNA0IjxEyM94kk8D9JZaHykdm/OolF0I96CAX\nq3i7qe8hGeUhF97ySbsCStPMP6N2O/B0XMgClklVpf2g7AL/fccJqXG2f3Tc\nTzrXW/ySWhVEay1+XSSEKpjx7Qpl/SYOo4F+f75b8L89DeuVIs4AO3W+3W8G\nbpdAnM7rR1R3dEiBEc7uweGbvwv/rqT3BZcaqd6H9f+CVk1G2F8pDUplaFaL\nZhgsjBrjvBXopLBQFXn4FuObXEGADRePwklvhm986WlNxHVBV0nLs84O9pG5\nw+gO7Qjucv9bAdMGXhAU73jNKtN5kh3dfI8jWEUBK8OEB/XhXD0m+brIf9TA\nYCYu47iytmTjglMHJ5GJflore023aeY7kOpxaxM1KrGvfsEAfoHuu3S7lZ0p\nnk6udCAPbNluBskvHiFTKg/KWSRcStkK/qAW0y1GsRcJYNvq+q5F0wcR+xYv\nFJkHnLe81RlC4YD8x+SKzkJFdtOLJhV9HaF1Q9TUGvNTelUdPlmS14qR/yaB\nl0JVGdMDcedBWNLQ2KuZnSw0BK98LGegpgKn6VzuheL6AdII11FbtqG+f4I9\nXvwp35uaAlaZHXVRAyobwK3YSKaMi8EU9P9kIFZG5XRUUBneeKsTN8lu72D3\n4H1Z\r\n=faS7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXU7Vcg62y7r05SFsDt6U3E7xjD+n56tyuHJMqcEib+AIgJnyhWmaZAVDxD2chgncT40vKoklyF3PBRCl0dRR8MHE="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.7-alpha-update-icons-6070.1.4_1619556620813_0.5977284075786085"},"_hasShrinkwrap":false},"5.1.7-alpha-update-icons-1.4":{"name":"@crave/farmblocks-input-text","version":"5.1.7-alpha-update-icons-1.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.6-alpha-update-icons-1.4+2e7c4aa0","@crave/farmblocks-hoc-input":"^9.0.4-alpha-update-icons-1.4+2e7c4aa0","@crave/farmblocks-link":"^6.0.4-alpha-update-icons-1.4+2e7c4aa0","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"2e7c4aa06c2ce7795a675a07dfa519380c02f03d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.7-alpha-update-icons-1.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (darwin)","dist":{"integrity":"sha512-s+ENgflleWzXOkZHJWgr9DOySpdj3qn4LtrxU3e8FgQ4xzJ/Eo+fd8KuPPctv88Zs6sfyOBHuM2Y5r4+4eE3qQ==","shasum":"1d2834b07c9ffc25875658967dc09b43189621b1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.7-alpha-update-icons-1.4.tgz","fileCount":10,"unpackedSize":53509,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiW/xCRA9TVsSAnZWagAAwB0P/3bIfNUFTJQnWDoIiu65\nIPl1JwwByZttkIVOF58wb7dVWMGra65WE2rl/xSZ5LQeCijvbnwbn1w3gzB6\n1Zjn+2aV0j3zX8M8C0zzboG4ew2wPpovpNzUvtcTSRciFolC0mv6gm9fuq38\np27h39tHWnbS4zXmxhIjSkqAzTZP33xiB1S0ofi6HOiPG2FHHEi/Z0kOoNHl\nms7nF5WXXn5xuiF9Fh25iiC+fSVjSXhHCA3ih9t30BBSYE4L8r4bxeaHSZ1y\nErYSth/mCRpIzg22ObJN+Zid9LU5XgThki3Qm2+SRGQc/6n7bpPRg7aaG1uH\nYjeet1Zq391lwm1+CoB9aLzTyn+m1b4g2je9Pp/M/TYcrbEjfLRJ+YgjoHfv\n5ZVdVyrVaxERlwly5mX/fNXvRhwrn08/2e/7swhVW9yhGwJOp+9/8D5U8LCh\nQlZDfaSMIbUdJcARAy9kJCnEey/C29m5OOD3ZtdLx2G4fTHrDRSXaKJTtLhS\nZFra0zwaBfnvjFnTlyBzHEdKhdAVDtHZ8eqIYDMhvxvBKUcDz/c4SY8+WCgO\nNRWu9Wi4p8Li1oNoBzATFw/yolAiDw+qSoOGN7h9IyHmOWlR0Ky5pV68kRFS\nFuKE4lvEWvgFpJTv2gM2p6n2Q2YuOeX0HuXroRCgP1ntNUL6Ch5+Sf3zyiMJ\ntHiA\r\n=NAC4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCnF70t8gQmkgDtNtEwB4HPMtf8oMKIwVTd9yEDNkjG3AIgR21wAkSsFSQIpTPtVjrVdBL9jb1uiaZrq8mBh3cW0Kc="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.7-alpha-update-icons-1.4_1619619825279_0.10230252360787984"},"_hasShrinkwrap":false},"5.1.7-alpha-update-icons-2.4":{"name":"@crave/farmblocks-input-text","version":"5.1.7-alpha-update-icons-2.4","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.6-alpha-update-icons-2.4+2e7c4aa0","@crave/farmblocks-hoc-input":"^9.0.4-alpha-update-icons-2.4+2e7c4aa0","@crave/farmblocks-link":"^6.0.4-alpha-update-icons-2.4+2e7c4aa0","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"2e7c4aa06c2ce7795a675a07dfa519380c02f03d","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.7-alpha-update-icons-2.4","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (darwin)","dist":{"integrity":"sha512-4h5i7cDFmmir7Pb67bDSRl2qTRU+u2G/VHp5SGXMjECrnpNniQCanqQ77ukYAybFxUtbmaiIzpzaf0//5Lo0kg==","shasum":"cb1bb22fff89371317dd9730af48843e8db93bfb","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.7-alpha-update-icons-2.4.tgz","fileCount":10,"unpackedSize":53509,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiXz9CRA9TVsSAnZWagAA/QcQAIY3qSSE/pGgaf56zSWi\nq8zzs2GKhE0x6MD5NgfcD9vVstKX4+5g8VwMLTD0K3np942/6Zv2UIQcIqJY\nMv5f9LXiFT4hUa4n4PeSOOoGYgqPE5hzcWvh00UwioiBw7wLpLr8VNAT7GDi\n8FVFm8pBeBorwT/QcunljPSlUHwTz0TwOom1pUxgJjmoana4eCRwyk7jRMT6\nfDj6EoiglCIeofoUYL7zK4K943GZbiZflDGN+TVgW6AC2WY1NuB8biFxBpAW\n43B/35MU/Btjgvbp562rtaw0561Jgdz4+bF86npxlMK+tWTVrtT1VIB4WOuz\nBGuiVCv5uDTSHz3zqM9J7kS6UHN6xZ8QFZD6aN08PTqh0h/OqRVRlqNPpiJp\np7ymYevtPRfS1kgzU5A0jx/WZsyhHkLD+mvtKzv7YshV3COFUp5ZPiSBzYf1\n4+csgvUfFCln6vhwCNpjHZvmrK3e/OzXCK5LBMgRhzbIYfLVcdgSMmYMaujd\nezT4rcUoO4DQIlzEztcFNrWOxCh3YKix7rK+L2Q0/IoQKs+2EdVnrz3HuGak\nhpcq9J0lxQGRtDP1zOE8F02Vq/A6T680LVTWZgkvdFyLkUSPA7TTLxaiRgYo\nF9BAYw/xMi4GgCUJPjkEOeeZ5qD/Cr9hDp1uhXvooGR2n6JnKhKMsBoZ3A8N\nUHPL\r\n=8fEi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDcRnMJzMEpfHkXfDBLdad6J+dPT8J34GoYmMPheAZyaQIgeTy7F+Ddkx5z3qluizRNbJZPGbmJq7qFboLDYNRTsQ4="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.7-alpha-update-icons-2.4_1619623165229_0.8873989827163076"},"_hasShrinkwrap":false},"5.1.7":{"name":"@crave/farmblocks-input-text","version":"5.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.6","@crave/farmblocks-hoc-input":"^9.1.0","@crave/farmblocks-link":"^6.0.4","@crave/farmblocks-theme":"^1.10.1"},"gitHead":"dbd7c5afbd10a82ed16ab61b74c07ebb482b82ef","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-rlAej4HwsTIhVLi3DAXGhM6YGr8c0pTBr6EpZi/KbEL9xLwpmv8ZDAqcWp410w6u6sXSAEp/fDqRW1CDShqwRQ==","shasum":"e24ce2d62ae41d723843f78233e18733634e6536","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.7.tgz","fileCount":10,"unpackedSize":53601,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiqRuCRA9TVsSAnZWagAADSQQAKEP7I3gbIeQ11U2INNK\nIb7Tm5A0kOoMmEh2j97NPLYPra/lbaBSAYUPJmK9G9+IEie0FKxNAJ9+D9X6\ncHFgWbQr5ZP4EFDQhSN8dHbMt0ACf9fiwD7FDIH6MbZGgy1cjmk9HiVPTAKx\nZWuGhci/6pL9u6ojumPb2jTbFurqIC5MHZPSdeGLlGuk00vP9ABYVi5o0g13\nYa0CO7/FGM4utMIucN/ieCrz0vCquiX+//Q2eAaMqXKPFuS97y2fKwzTHyUa\n59QjL9Xnf3v9c8zKGCrVTGqyY4zAKlxZ0K91MYX/Dwv6ppEe66oUfWBBQJ8t\nxtXuVdnc/9eq2FesXEEPF11ZgVRCqnaK8nnPL5835a5j0hROffIxNi9n4uvQ\nRXZELhzSH52j3akcM5FcM9T7QcQYAcQYpjx7SWz3SiM1oN4TukM2L00Nvahx\nLzOJm7/RVOLTaMT/R+Vx7YObfMXH1pZpkUuY9NLBQlMWCkYJsd9TFkSeHFLG\na+OzJUds79bI2pLH2g//lLwv6Rx0WikZi/p4TUgB/suwu6SKUuLpcGLpPXYB\nuX/osDiNlS0Q3ZkhZws3/gvl6A/I1XZGGNngMTOPWiTlYYhRP86Ib413rRK+\nw9muyKhOSU3idVVeqD56loHE9PrkXvsGmB8QqtHebH/UKCgfKfkF78g5v1ZF\nPYtM\r\n=9dTw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCENyoZJDgOqPaok1O+xlTwkjx9qoydVJSOjYVTtHCCWgIhAP9k7YuEZne/fkDip179u9CEy1/28AdLF+PPnbbux9FB"}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.7_1619698797553_0.09679675303230728"},"_hasShrinkwrap":false},"5.1.8-alpha-add-font-size-6125.1.7":{"name":"@crave/farmblocks-input-text","version":"5.1.8-alpha-add-font-size-6125.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.7-alpha-add-font-size-6125.1.7+7f475499","@crave/farmblocks-hoc-input":"^9.1.1-alpha-add-font-size-6125.1.7+7f475499","@crave/farmblocks-link":"^6.0.5-alpha-add-font-size-6125.1.7+7f475499","@crave/farmblocks-theme":"^1.10.2-alpha-add-font-size-6125.1.104+7f475499"},"gitHead":"7f475499e3df2fdea986714bf3eec2907eff074b","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.8-alpha-add-font-size-6125.1.7","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-YnrbQkBw7fHEJ3MSrnrIkwgq0I9XFlHUez8mubM5NP4OwNIoWRcdzLEQay8mx5o3kL8SSH7OrlLS1i10YrAoJA==","shasum":"36d3d4ec90d47b2ab59a1da453abca2be3142f75","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.8-alpha-add-font-size-6125.1.7.tgz","fileCount":10,"unpackedSize":53793,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5dwlCRA9TVsSAnZWagAADSkP/1WwOqnfIhFR7Xy4MReo\nzAGaOVIub7zq3chLsgyo12PoIAqhEOvcGRR4LLOtDDQQ3W+B5W48rf1sIpzY\nNQWzTirj7ZI1bT6Mu0PejIsCdjGbui4w3+7qaoyjev60ZNZlhsjDevKIMWVw\nPz3t/XB6wmiCNoL4Aqm57WonNCOmVbvDS9cZikqhyiVZecIV6K9cfzucYulz\n8UGFWX9ptZOVfokhgCAbNN8LUGsgfytUe3Am+5onN6Mk61RId4ST+mZqbHSQ\nBWCh/Ou/5b9DfX+aic0S5WbfHGAxoraLnK2VFjMCe7z8KLUJMD1R2YUHEJzq\n9j6P6TwMUpRo20eMWBh12Hll9oJi91dsixmF3bgc/ROCKZS/RuSiWceT9P/w\nII6INLU0yHIj+/hoVZlCHL2+roAUnErUd7JB5j2xkIOxcFYBQhjinFI0RF+j\nQpGUbRopMcDLYuMVuWK6UFrf1cHPxkj61upn2NWuyVvVNAcQregjst32CVON\nPZJ27+OW+dfjrwcij3EwxoPtkoKEj+e3BQ+GQLGV2qcH5ExcVcHMzZy41TXr\nX+gpaWak4CYr8kWWD9BZ8h4nPIlECTO4Qy0s8zzGjn/tHZ1L4lnwKK1/adOA\n+YERZU84UTeCeHybS1Th60rSW4tiit7EnQ2X1PC+/1lAtCpiFrx5Yi+KKaH5\nhiaN\r\n=sIaO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnhyyYSY5dcaFUzY927YDjwCBBL+FrHp+qbcHws91VBwIhALbv0ohps6baOGlZhOnWAueZWIOCv6yC0+xF0PdloYaL"}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.8-alpha-add-font-size-6125.1.7_1625676837010_0.12563406460295745"},"_hasShrinkwrap":false},"5.1.8":{"name":"@crave/farmblocks-input-text","version":"5.1.8","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.7","@crave/farmblocks-hoc-input":"^9.1.1","@crave/farmblocks-link":"^6.0.5","@crave/farmblocks-theme":"^1.11.0"},"gitHead":"529df422c27b1ee56543ec2e1c331ec17d8d216f","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.8","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-/4lQ0szr5V/lLkQaweYBhK0slBjIavryPAV6EvrsDI4m59vjV1/ki1N0797h4+txseNsrRLp3CRPn+UjUDgp3g==","shasum":"950dfa2792aec9c4469a317f8c22b97fa0eefdf8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.8.tgz","fileCount":10,"unpackedSize":53821,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5eNCCRA9TVsSAnZWagAAG6AQAJzaJkzvexXsUVEJDMEQ\nfMtG9sbAuFMF22ZFVYeFyHZE8IcM/PjTlTjoscyr20XMqoQVBDM4hku5r9zI\nXKDUdYhuGQ+5uGpbcLLaE7MP9mPLGr6BZGRlyeeVH5MJrcFoxAyhVEBGpxXp\npVCvLHO7/xQclZEEaM7Ly38NgmAYA0Kz6tJBtbi+mSvT2Eksf0lRc5oZC2jU\nKou1aVSQJdOJzPcVyfXswq3w8HlveE3lf/rQWQ10USOjyxlDqgbMC+C1pWJf\nzqpMm4tmLQffjYeDXYSboH8n906qsHrELMmwiKbVNKTMUT9/ZDyRyzWo2w9g\nh0IkaCgyuTWAqWZ08p13277vbp5K4AzoiEwhUu3xc/7QLY0k73OOdLjZJGIo\n0XdWBL2tuqd+0FzQxd8YO6b0jyqS6e+pcCAsaZV//MCh7ODxVS/J5GCzkrE7\nqEfQKY5/kFxbaYEQy/Si/agET834PHjlsqQr2kSQYT+P0dkCIbdxdxe7C5mf\nXmA5TQyNXhZ9oKDkYgh/wTm6SdMEfYqp1KdOfzLVt1O9ad+fxhAvQjWSTpIp\nHPLJ8l9ONYtrCHWIq/lGFB0cVnGbqQMRDLvCdbffBKV2vtL4SXyFLYdzP2vZ\ncOy8OSvDiPP25dTlsFHC0HkUy5v6TJrIKuVEsLfehiKDnFevRE5oeTIWUKPI\n2wlp\r\n=+Uny\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuMhCwCQtA3qOkrI2Sj4YFl/E4exVkSARA8nALQuXPEAIhAM8d2kHGEtwx9yLXBcnTicvryHXt4WteDKiRktL5JE1e"}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.8_1625678655158_0.7031220418631416"},"_hasShrinkwrap":false},"5.1.9":{"name":"@crave/farmblocks-input-text","version":"5.1.9","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.8","@crave/farmblocks-hoc-input":"^9.1.2","@crave/farmblocks-link":"^6.0.6","@crave/farmblocks-theme":"^1.12.0"},"gitHead":"3f925c2d08be62ee3671411e5fe69272aa3c6960","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.9","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-1Bmicppw1ywishSDMxrseP80G7JKxhOYBhE1W+7YODH0sELGLeZpfbyyOyNP3pjRjk5dczh9HjpI5VIxFKyNwA==","shasum":"b0d7035fe5eaa0b29d6caa10459be924eaf722ac","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.9.tgz","fileCount":10,"unpackedSize":54041,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+0ATCRA9TVsSAnZWagAAvn0P/3eYZORUZEq0dK0kpHKu\nh7O2lFtZx31d9c3zrDxtS7tazkpKCJr09D976wHndSYsNzf81Vxm59EeIiET\nwyy5YsL0ZoAHoH0WFhdp/f3MuaECcuARd8E/FugYQV9yO2R09+hChuNI0Dgi\nsMjqemWDRBAOCRRRcIzrYy88JjPZmCsb1eIcXXbM+j/YidxXsiVe3oHHEG5U\nXv2w8159BNqRwbzIwu8GqCljDDI1hLsnICZOX9UQKe8PQr1CD99rUq/3mc4l\nVBe5kEWDb3spgifI33Ouh4n9pFjspZpKabHFU1ikBVLay5Ux32e2rWaLFSvt\nfCGrNOUA8+6odIgNQQzt9vBmXVUoq4HPrduFUmU6PwQ9sFImeWNE/yS0Mwf0\nlZsNzz/vUQlkxw5DmIm8IV6toMhYft8dcJJGP0Cp89JsYMJP/CwuKjPfOwZr\n8+XWmKhi9QG19TMmFrwi9xG1YS60AtGX4RuDAWCQ5TPZU0RbDB4KRf3YK/fC\nUW4sg4TD/bF3gslMZIfIswQCLeKcQYNgG4x/oPCJtPRRERRypKoHiaJG+339\n7j8tn1FYNmB3tPxh910OFjR2KQ9pVblPYmYvXiSaNYf104z8YtdCHpFy9ddH\ndsaxOj/JRk+OfHkVxn6mfSlkhp/jl2kmsr+b9PZuGjad6WZTw5MzU+Lvg5jz\nxgMI\r\n=wU8M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICzIP2LcVK6iaOMlejedlpR4q2CdI6hE1oStTwrWklpRAiEAjr26RfjcIH8PdxDrrazV3w5snfJ+YF0/0DJIj9EhVD4="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.9_1627078674965_0.7624560458056311"},"_hasShrinkwrap":false},"5.1.12-alpha-lerna-force-publish-6137.1.0":{"name":"@crave/farmblocks-input-text","version":"5.1.12-alpha-lerna-force-publish-6137.1.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.11-alpha-lerna-force-publish-6137.1.0+091356cb","@crave/farmblocks-hoc-input":"^9.1.5-alpha-lerna-force-publish-6137.1.0+091356cb","@crave/farmblocks-link":"^6.0.9-alpha-lerna-force-publish-6137.1.0+091356cb","@crave/farmblocks-theme":"^1.12.3-alpha-lerna-force-publish-6137.1.0+091356cb"},"gitHead":"091356cb26d3d195b382de0928e69fe7f006cfcc","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.12-alpha-lerna-force-publish-6137.1.0","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-CKn06Zep2OQ3vIll0AB+JPkkh1s972oPFFKdoSRGH80Q0QHJczTUuLvXovJcF549tIaxkFoF1UP4w47Xw5i7Dw==","shasum":"ad7ed86861b33a64ff69d2196c803cb4a9d9abe4","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.12-alpha-lerna-force-publish-6137.1.0.tgz","fileCount":10,"unpackedSize":54708,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg/r6YCRA9TVsSAnZWagAAVbkP/jLtiWrYYQqpmpjfeETf\ncUpyCZxKY/LNetPgb/pkxDLkRULFUrM0TM41hhcxJla5NcU1p1TDUbI6hvBR\nEAd1Cg8V6uFeqQHzlCRlxSSP6J0DeRYnBDHZipMxTRCwB7jAk0AWJ+pJylQ1\nxmBeLQJ6lgRjd1aiqpnfEUqDCFtNioqXfhEOGyXgktsFP2yuL45akpL8xxNt\nwDwKi6VDym2+3vZ/aFLvxB4gI0oHtcqLgDFx/CIktpQ/owrPNhijieAbsMKn\nBY2pI6z8cbAL7qArFDG1cWKT3VmqYo2ZB47fyIlHGoRCfg+Visl0NBzFT7ku\nJzo1ZUlX1hbW/jUHdyV+N/2KcSgyI7RQk42njG8k8v+EExj6S1M8celFJgs8\nSq/EJA2fGG9hjuZrGn4XSteox1HynE9YPEQPhdKOtAeXdAVnNZFKjuPm/8Vy\n/effTsYwrRy4q/gHYS+4+jyj4r6yVAKhnCBMt2qg6p11zkBwR2g+EaNsqCSN\nkj6GpQLHwTfH9ZsPjnv0TUE4WfX2bWFXHqCywMNBB9b4Lm5XRKnKx4kY/gUo\n0iq7bGq4+DmErgZFtm5HpAXvTjHgDUQbdIQj7q51qqej7vRlEjpzRRqLbOZr\nE5sa0DSoXpvpqXkbdTET6/s303K1Y0PfuqfZ4OZpesO1bAUEpoXn05SRmFcK\n6/+p\r\n=x2xQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEEdSno1BOqoL6pzSMiDPR478C53n0NezmqupxhchoXvAiEAzYAX4v8Ls15UA1eOzhdCz+TkN/mZw4F1Yp592NzUBbg="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.12-alpha-lerna-force-publish-6137.1.0_1627307672784_0.04516976738416667"},"_hasShrinkwrap":false},"5.1.12-alpha-adjust-xsmall-font-size-value-6142.1.0":{"name":"@crave/farmblocks-input-text","version":"5.1.12-alpha-adjust-xsmall-font-size-value-6142.1.0","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.11-alpha-adjust-xsmall-font-size-value-6142.1.0+03a0b7e8","@crave/farmblocks-hoc-input":"^9.1.5-alpha-adjust-xsmall-font-size-value-6142.1.0+03a0b7e8","@crave/farmblocks-link":"^6.0.9-alpha-adjust-xsmall-font-size-value-6142.1.0+03a0b7e8","@crave/farmblocks-theme":"^1.12.3-alpha-adjust-xsmall-font-size-value-6142.1.0+03a0b7e8"},"gitHead":"03a0b7e879d9889f456636c79fca43fdc271c84a","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.12-alpha-adjust-xsmall-font-size-value-6142.1.0","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-mQbZWHax4cT5qpBkM2qoyaC0BL8VptGg3JaomkEYjIuxtYreXSCu9qB9jhSN2MjkJbI9nJfXWAjZOHusylLZ+A==","shasum":"0e611d2ebf32820018f356ab20c943f81046809b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.12-alpha-adjust-xsmall-font-size-value-6142.1.0.tgz","fileCount":10,"unpackedSize":54758,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhFAf0CRA9TVsSAnZWagAAAGMP/j1t5TE+Cd9ToKIECRrz\ncXWtXiSfeLZC/PeEMDhBu3Zsg2rubWYqLzrwWUCjeFs987JlE7AH39vKA7sG\nC3s2aFlCK/d+uNdq2483TAa1kspQDPd8TVHa1Cigs0qJYT5qUVKM2ktJBK72\nSkXciYWSaJX7Y7pZO00NMl3AspfkRxH1r0PykbNOcgfMaguM8hF1YC534YS9\nV7w1Ca5GcVgoF8qkHr0JysAoudzGZYhyolyAKRHwg5rIE30grOJgTYXqaqrN\nbr8nC8aGGc0+mSpkd/V8NxBLgWvXjp7hpaOmMXHomTbAgW0cFS91AAMkLclj\n4D6Gnk0nZC0msL4UJ9ldNaLGtPWJfaO2gFHs4GaW3fqIgKzjxxRN+yXn8GId\nVixUfPTjc2F2FKbMY9C68LRPIZ7o1lsePjnoCOmZRYC9tKVRAzSTNMhvIygL\n+SlzyLfwbYMeWKu6cG83/fP2N5j/vBNa0UIIvplhslFpuIcFOugxWszYYT/0\nANlAIoghnb19NDCs8CwZpekfNy5ia9n8ka2ullE+QX7hlnql4W2Yhw7vqZ3n\n5yo6bsvkH/ae8PYDOvypY3oYxj8UBinoemSN9SVY0awkfMFEHOBfvB8LHKJR\ntmgJoWG9sw64Ja7yEMFqGLsnkIGE5FX6ew2ko5HJa4OXBQTSKMf2Z7tl9y2B\nVp4t\r\n=mzxT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDRt+rOEgCxtjRmgNVg4/lI9ZV64ldsDCYPhhV5pqO0JAiAvS+iCFofT10afz7cgBrDxlGL5q3Qp5sMUlHN3prNvcQ=="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.12-alpha-adjust-xsmall-font-size-value-6142.1.0_1628702708150_0.7352917812615318"},"_hasShrinkwrap":false},"5.1.12":{"name":"@crave/farmblocks-input-text","version":"5.1.12","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.11","@crave/farmblocks-hoc-input":"^9.1.5","@crave/farmblocks-link":"^6.0.9","@crave/farmblocks-theme":"^1.12.3"},"gitHead":"0c3be1617e4e4bd27d1b07b98987befeea153300","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.12","_nodeVersion":"12.1.0","_npmVersion":"lerna/4.0.0/node@v12.1.0+x64 (linux)","dist":{"integrity":"sha512-toaGvygPdXFmK4x8lcdfiGy1gPHYgUioefOiUHMiGy4MprjPes2qFsJwhR8yz3OZRoP7nwC4PVTFUEt6HE+DNg==","shasum":"e8a8766558c28679355d425d9201ab143cfa39f2","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.12.tgz","fileCount":10,"unpackedSize":54711,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhFBKcCRA9TVsSAnZWagAA39AQAJBSrIV6kUewtc+XZfPu\nO/Si/JJrvRKqnnIBWdJ0HyhXfBpSTiW+gS/XhsDxp+7h4vFvV2kRnj4nBOR7\nehrqIC9XrZ1wfmGOg3hPCVSUm9UQghbU4MIe54Sl9Y0LbZjCRVOOcdF2zLTl\nMPa/qGw50JVqpbUjfUCoO/1U+kcPvPoN8ZGvFXjJ2vuTkhu20a1jpa8oveiY\nIv/nk5D9O4IhQWTfJQUvN1qO+eVens62RmhTI/jv8fUCB8YiX4fz2UDemMci\n/cxEJKvPsXURKsTfziqBCStNvFCo2P7+wpnCJOOYwaX2GKRo+OvWz+rpCHEz\nNKJ0f6zQW1FN7X2Ta0KCJG62AStLSOktcHMvitjNG82mNk0S1VsITeAKmdEn\nqiwUgvIUPK2G1fVwLm1LtIvsccxCCgWDcS47pB7SzuhT9aj6WbRZsEA298Ye\n0zMTvle7ap1Tr1deLNi/oacQKNXmX2ubGDjbFWRmvxh0s55o/3uRBbGf4zyP\nMNhP8RvOjSH5TT30FAskgv3F+SzcuUs/zKvam064gDvWON+MNxXwM+4vkmUL\nP+4laNlbn5/x0MxnqWKllqLLT+Nxj+3hnfXl1seWH77oue9txu5yuZ7Hc5PS\n7WzPkl9EcDUqXYYTfXbFRujcdvYQiiUzpxD2SSf8SduWj14DrohYo/OuHNXQ\n39cq\r\n=LO22\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHUjTdxB9X4hi+Uaqtnfub2itEroGSpq4T68X//64/VBAiEA4iyNNf5eAzg6/c+xwsxCziLqMpSvQ8ulJyVGzt8WEnU="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"will@sourcewhatsgood.com"},{"name":"juliansotuyo","email":"julian.sotuyo@cravehq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.12_1628705436238_0.5511632961763169"},"_hasShrinkwrap":false},"5.1.13-alpha-update-deps-6177.1.7":{"name":"@crave/farmblocks-input-text","version":"5.1.13-alpha-update-deps-6177.1.7","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.11","@crave/farmblocks-hoc-input":"^9.1.6-alpha-update-deps-6177.1.7+5556f294","@crave/farmblocks-link":"^6.0.9","@crave/farmblocks-theme":"^1.12.3"},"gitHead":"5556f294ee41b47a2e619c9249aaa424b35ad258","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.13-alpha-update-deps-6177.1.7","_nodeVersion":"16.13.1","_npmVersion":"lerna/4.0.0/node@v16.13.1+x64 (linux)","dist":{"integrity":"sha512-nUGGWG73SkxKEU6GXKWP5/jmLL5NvID6FNw3QuK97l+G99vobKnV3tCwPzlMUUkUzLhkrv2EpleliShOK/J/Ow==","shasum":"940e4c15550a61a5272703ca2a2b256d3aee5d55","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.13-alpha-update-deps-6177.1.7.tgz","fileCount":10,"unpackedSize":54786,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzapxCRA9TVsSAnZWagAAxDQP/1A4MSVLtu5LdD41rIGM\nj4vbWhcj7jAENvUXJttFzQfZ/BS42e/7uHVN4F1EppEm3CqR0julyvBndwCL\naHjiGNEkg7R1wjHfv2Eh+7oatYci0GAs8ShYBRYZzLLoy2AlzGstTLrog+IP\nJsiNfBO1By33eaPr0YLdrQi/8+dVTZCQeOvJK0/qF8Pfu9rTHj7cROug3vRA\nDsFXvtNS7Hv+1za9lKDGGmlBO52J/VI42tJNrhCnFh2pEbuldGaSYulj9qE8\nn0V/+cypdvnLSFxZ/4v9Sajyz/sXgeq7bP3xq9YhA616CGbrNZJb5T5r+tKd\nMXtTwwP2nkwOAB4IuvQtn1ZPsKifKlqXjbF7YcGyjgIwwE1Plprk2tqMaL0K\n/C3daTbrbjwdUQGYCNg9s+Tf1CG9HHM2Vg/BB5t8u2NSHhf1l7807ZR83Hyo\nIgbmogjcxw3fbrWq2xOmdWmfDXYlq3jxK9Ku1llifwASAsnkjRicx9xpa/w1\nvvoTz3j+I/AtlvPEq0GD3Va5d++OJ18ynmkV/nc3tFYaHDp7mGlO0UUYFSo8\ntijVMh0rm9pPusASPZ2+uGaXb2RLmsbwphwie3r2qrTa8L9oM3+5BTcg1CVb\nLPrPmxvnnERzZci04/epzjdzHeb1rqeLmHK6AH+VBPyotgaUxlW+/i6iXei+\nb97n\r\n=U9FG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQComA70lINVCop9d4V7Hl6U3gNFyJ8Fv7xHeUuTmOYdpwIgCo42BHGFMAgR+0fg1hwIiHW+4xz4AcZIoS89sCt+x9g="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"viniciusmartin","email":"vinicius.martin@cravehq.com"},{"name":"luis.nascimento","email":"luis.nascimento@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"me@imwra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.13-alpha-update-deps-6177.1.7_1640868465295_0.029779006271603237"},"_hasShrinkwrap":false},"5.1.13-alpha-update-deps-6179.1.10":{"name":"@crave/farmblocks-input-text","version":"5.1.13-alpha-update-deps-6179.1.10","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.11","@crave/farmblocks-hoc-input":"^9.1.6-alpha-update-deps-6179.1.10+3161f279","@crave/farmblocks-link":"^6.0.10-alpha-update-deps-6179.1.10+3161f279","@crave/farmblocks-theme":"^1.12.3"},"gitHead":"3161f2795915be4e4054157efa94a3cf970d51a4","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.13-alpha-update-deps-6179.1.10","_nodeVersion":"16.13.1","_npmVersion":"lerna/4.0.0/node@v16.13.1+x64 (linux)","dist":{"integrity":"sha512-gM0UqBX9cVZ7DnlJYA7InuTz3pijlLb7FoEBMUfoAQowkPyC9Eqoh9G+H9Cdy0/jxuAPMiaCGYmPJnurrEGm1Q==","shasum":"0e5967f200d697bcf06e5ea1c208ff4a7dcd9cdd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.13-alpha-update-deps-6179.1.10.tgz","fileCount":10,"unpackedSize":54826,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzfUKCRA9TVsSAnZWagAAH+MQAJwO8f5aUq9bwv4Ksphe\njKMRdeW+nGOkfIoXAuvr5IukcPuDNx7+a/NMeRfbs+ptajYzmCDfkGHhnM2G\nssnfTKM9FYIzO/GaoceJi4A8GylXhuVMGMn63OGXxJLFxoUkChwZx1duKUkJ\nxiK2ZoXDHE71fTaDi7Gwyu7W9X2m0sCoRKg3gE7T5MJT+1ezCjmfci7ZW8TK\n7IbtyEK52LsUc35WvRYlF7S0YDRA2npBlRKEmJT2OoTKTnaWQxTvDsLilv7D\no6l96/9zQqQj3Iz9ktGJ5epAKB5AUU0Frdt9Nx49jTiaAfegWoS96HZUdDHT\nUKkzENOQ5e7b6IDsZ1Vyji3uwZ7+GEtv9gnMo7CST6Bl4yqyhH4F/ugRbUdp\nELoXvnY7MQrDs415Lta3xFbvxPfUl8mDrMwS9sLV+IPuFU0pxSkf7BAes/rP\n0TUpx4ja8gE9CU9pAgY6MnD08wQIzOadantYEPw75uQyMqw0rI4pE4i4i1DM\n0b4z8PX/akCkWC3vF5DYT1PkNGGf/blooZFG4YJNhOw49Cxlx9WqkQc4BR64\nQD5m5eenHCFAOepr7woxvIU5p/Omdfmg3TEkfxmva8ZeDDUMZT2zfg5ZUSva\nMM15YKIwlybb9K98gbZuC+wpMajSQaENaNVaNh6Nq4+uLiEN/3TJeR4uhxac\ndvBR\r\n=pDyM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID1elVmiB1e2AxwY/QbP+W0hvGdDs76bQo4Y/N6k120iAiEAkJID4zqoZqL1w+LmByL2qKmEwSG/dfzCkQGrYaOrmdA="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"viniciusmartin","email":"vinicius.martin@cravehq.com"},{"name":"luis.nascimento","email":"luis.nascimento@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"me@imwra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.13-alpha-update-deps-6179.1.10_1640887562795_0.36327695798499104"},"_hasShrinkwrap":false},"5.1.13-alpha-update-deps-6181.1.11":{"name":"@crave/farmblocks-input-text","version":"5.1.13-alpha-update-deps-6181.1.11","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.0.0","prop-types":"^15.7.2","react":"^16.13.0","recompose":"^0.30.0","styled-components":"^5.2.2"},"dependencies":{"@crave/farmblocks-button":"^10.0.11","@crave/farmblocks-hoc-input":"^9.1.6-alpha-update-deps-6181.1.11+779d1088","@crave/farmblocks-link":"^6.0.9","@crave/farmblocks-theme":"^1.12.3"},"gitHead":"779d1088718520d7065685e77da80ec9affcd861","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.13-alpha-update-deps-6181.1.11","_nodeVersion":"16.13.1","_npmVersion":"lerna/4.0.0/node@v16.13.1+x64 (linux)","dist":{"integrity":"sha512-Ggh6huVshFavjY0igYRUKcFcD3xW3Rg48UPAgBAUqoPWVA2uAtUk16yU50CnkyC7jWYkbJO2/Us2GPRTlv11eg==","shasum":"7635791c425b64469c7e2160f6d1a2cf3085e3cd","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.13-alpha-update-deps-6181.1.11.tgz","fileCount":10,"unpackedSize":54788,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzfakCRA9TVsSAnZWagAA+ysP/10ojl0bQ/ZAAl2WG9mV\nVAomdxFF+nNZALbFVKSLodHtTLqoSl8HqE1zm9Oq7hFHUhQeXZ/wjTORPfAX\nfeVrLdt/ad47oS3KHYfktrm94TMMDI3C2B0X64GZ3XtL9DM9vqAR7YN8kHMs\n+J4wBmAhIV3zOWuydEAtg0et7vzI8Od9I+DB7qFfyf0CgOOxyEWJzt8/V+WN\n9tZbHo8JedqtARc05D457isBpKe6SiH+wOC+abVbKMcJH1c3KljQhNWEqiV+\nv8MP/evm5Bka6lysmjS5P1lIOvdo939CGzSk7k4HGqCzbB4VUmDJYEkyElIO\n0urLW7LHCGak9hSQxCoVx5VoHnPuBSJ/EAnl7rDMuBWPuxuqfhTCyGXGPhi+\nfbOBFd4UZj9iljIH7d6HeTHTvemCxaO3YR68huNi6bYr9mPoc5mS55Islij+\naXjNV0PkA7hp//DWLBCMpLbISROdWiGJeHlAIBMJadqw3n6MdGScpgZAmZMh\nk7MlmQsABs/DAqGiolAtZGceo9WsizzrDN/f9GbmP2F7eixs5wayCeHezHI+\nRBaLNNsk+r3pxbVLcVIPlglGMe8Od+eemf2idam7huYoCdGwY+9YKULhjWcB\nlVT1h1Du+XlmILqrysxmtfGTadAlPvFhJVaa9odyICM+OWVKMmZvQaOScTBU\nt8EF\r\n=qIDE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDqLCplOHebJNvBQnn7/2m6YnGva+HSUXaq7jBvYipGwIgA/9Qvgl4ONQ9PFVQ3VNXq6XJaOyHiwIHwVk/RTFUrgE="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"viniciusmartin","email":"vinicius.martin@cravehq.com"},{"name":"luis.nascimento","email":"luis.nascimento@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"me@imwra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.13-alpha-update-deps-6181.1.11_1640887972063_0.9672497515487015"},"_hasShrinkwrap":false},"5.1.13-alpha-update-deps-6221.1.34":{"name":"@crave/farmblocks-input-text","version":"5.1.13-alpha-update-deps-6221.1.34","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.2.2","prop-types":"^15.8.0","react":"^17.0.2","recompose":"^0.30.0","styled-components":"^5.3.3"},"dependencies":{"@crave/farmblocks-button":"^10.0.11","@crave/farmblocks-hoc-input":"^9.1.6-alpha-update-deps-6221.1.34+0eb2366f","@crave/farmblocks-link":"^6.0.9","@crave/farmblocks-theme":"^1.12.3"},"gitHead":"0eb2366f88ee0c056cf965ec7e50699fe6a20c86","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.13-alpha-update-deps-6221.1.34","_nodeVersion":"16.13.1","_npmVersion":"lerna/4.0.0/node@v16.13.1+x64 (linux)","dist":{"integrity":"sha512-Aol5a5Iv/lq1SO3SbXwyG4+4TcklCaqyNggnaEdFl9+Z0TTprNfO66JSpBOZ+bBseYKe9FRD90/dzakWY8IbSQ==","shasum":"d4bf4ee3e438055156de0210cbf86659700ff4a1","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.13-alpha-update-deps-6221.1.34.tgz","fileCount":9,"unpackedSize":11555,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1JDKCRA9TVsSAnZWagAAJMkP/jxV6R68By8ehg3HImYM\nuHyOEiP76qKQ1BGVtHivNtNr7UcgYLWZgPgZCodbcOr2luvCOHrustNf7alF\nMZdSVJLdD0NHYR6gBkFpID3teRmBR+hpIRGfGdGoaOSm7EV0435PvtzYJ+uh\ncCTkeZ0IpSDF0l9VaGA717ZrOjrVQcDk0Bw/jTjDtAsSgLoyAPs3pgNu+4X4\n/mxW0/L3fECaHExvajqTXP1/2LLhLajEJKWH4LAetbT2H8al/eL/e4zkOPTz\n5N3BH/fLFZU8uhxU2SGPZt+IA0x3jfv8KEcoOSXq8+8LerEP6UCe2rs03/8c\n3EgYGrwuViwPduoHUta24N3lEcUWyTTaVF+NR3xgEO9MqYgRhszn0a3kAKqx\n2UjqX4rZr2HJxWRo1cQUV8HD0L5MBLArBvyOmgP/D02gK6+a6jKt/Rk7ntg4\nrxtBLBjPO3jI7W8cxYLwqF2zdAL9Kb0tT3gGdGy6YDyGCZUduFWifXREsHMQ\nu67Obi578G4D8SgD1KpovS1q9m2N/FWrkwFrSuheRzP2sechxJqpZBiNAeDL\nCKhBKnmDlxYeuY/TIPHvSueoZnnE76Vq0XfxXtVvyGQ/me4wy6z1m1N4CNP0\nCQE4LeOmGgvTTv49HIgHkfXqkGRX1k/1j5UOlK0EtZ1KbQ3J4Qe9Qtw0+NwS\nTLjG\r\n=k8iW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzn5wmCbEHP74jDwglzbbaeUf0ner10DkRJF+wXmc6cQIgB4Uh1wdIWnyY3pkBBB6Xft9ps1dn/OrKbAmA0cWIZSA="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"viniciusmartin","email":"vinicius.martin@cravehq.com"},{"name":"luis.nascimento","email":"luis.nascimento@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"me@imwra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.13-alpha-update-deps-6221.1.34_1641320650057_0.8227540108718217"},"_hasShrinkwrap":false},"5.1.13":{"name":"@crave/farmblocks-input-text","version":"5.1.13","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.2.2","prop-types":"^15.8.0","react":"^17.0.2","recompose":"^0.30.0","styled-components":"^5.3.3"},"dependencies":{"@crave/farmblocks-button":"^10.0.12","@crave/farmblocks-hoc-input":"^9.1.6","@crave/farmblocks-link":"^6.0.10","@crave/farmblocks-theme":"^1.12.4"},"gitHead":"22b3a1773647b5b8be826e84ef0d9dab024ebfb0","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.13","_nodeVersion":"16.13.1","_npmVersion":"lerna/4.0.0/node@v16.13.1+x64 (linux)","dist":{"integrity":"sha512-UhPxS5Jg7jnFCCP94CekNTWBmHeAYYCU5PqFZJO/dMTwcGvceEC1Kd9YbNLSx45RZbfbVbMA64G7MwijB+afGQ==","shasum":"669bd759c3005a6d7892a602edcbe1a2929b47a8","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.13.tgz","fileCount":9,"unpackedSize":11482,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1ZPtCRA9TVsSAnZWagAAqsMQAIPk3l4WZmR8zTnEy8t0\nElRAGHRB8wJsM9G42kyTU3lXHPNZj+5mbWABxBCa24WoHZej5TiwyGy8rlJy\nqGk4UjFEc6iX9WRRSOl+G5DnXqQ3ypaJoO72PwsWW9Y6LZHaUeLWkKkTClfU\nYS7Q9EX0Eex8utovmpnQcLEGSVU/SIpImWeMIOFkbotzEEld7h35iFTd1MK9\nFDh+zP2ZKxravd1DvI57zNDShy8B+0uLFNZ/Jm6K7oPZjNt5YdyByrAfVu6M\np2eg5oQfsU5wkwFCMTWeDOQtIxkiAVnDqckne8xTbIaseOzB/NYx8+sWdh4+\nclKRnCZUGvMvlrcsvm22J/bWaFe0uBA/ZqMi48Zvz9DOhuXVo20mFfmcs2eo\no/9lKUbqD5Rw30pWxZwq1t6ppKfQu7YuslUpueTp4BEthiiCI798WEoRu9vi\nMXu1QV3mYzoowplAfzFSlbCkXu4/ybq2nG3+71alM6BdSgq9VG7E8C9F5jRW\no6niQkEuz3RXfEU/cDnPQwKehpiIADnHqBhwJD0oi7QlP2TXySxJjxyJ7LIs\nCCYLeSOn1yWoSZHbQLULfrjBXnApZFPM3w7MI0GZcOhTJBIgq+bhqi3If8W+\ng9CailyTKGhq7UGpA4g+v4/rCuHp4fg8jw5zMUOIxgVLImHQej5dAD7ftu9b\nbeFI\r\n=HROb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIARb6edd/1wTqBkZIUoxNJIDlIBove3fj4amCatvwhJOAiEA+jRu/wv6iCQpGkCANBhgXXWtGY0MWx2d/9/jRjLV9Ks="}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"viniciusmartin","email":"vinicius.martin@cravehq.com"},{"name":"luis.nascimento","email":"luis.nascimento@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"me@imwra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.13_1641386989068_0.5046048149203635"},"_hasShrinkwrap":false},"5.1.14-alpha-fix-deps-6232.1.2":{"name":"@crave/farmblocks-input-text","version":"5.1.14-alpha-fix-deps-6232.1.2","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.2.3","prop-types":"^15.8.0","react":"^17.0.2","recompose":"^0.30.0","styled-components":"^5.3.3"},"dependencies":{"@crave/farmblocks-button":"^10.0.13-alpha-fix-deps-6232.1.2+1d3df5d3","@crave/farmblocks-hoc-input":"^9.1.7-alpha-fix-deps-6232.1.2+1d3df5d3","@crave/farmblocks-link":"^6.0.11-alpha-fix-deps-6232.1.2+1d3df5d3","@crave/farmblocks-theme":"^1.12.4"},"gitHead":"1d3df5d366925f772bd4889bd76badcc42bc595f","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","readmeFilename":"README.md","_id":"@crave/farmblocks-input-text@5.1.14-alpha-fix-deps-6232.1.2","_nodeVersion":"16.13.1","_npmVersion":"lerna/4.0.0/node@v16.13.1+x64 (linux)","dist":{"integrity":"sha512-hf2uZBR29nTDTq4hmB1ehnyBxSUoF5fYRF/rr9h9GvpJxKV+arcQetqMd+HHdfyYfytOmjYav3BSALDSOl2hlQ==","shasum":"aca3380836d80462e77a99283c44c24dbb630266","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.14-alpha-fix-deps-6232.1.2.tgz","fileCount":9,"unpackedSize":11614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBCTXCRA9TVsSAnZWagAAk5oP/3SRcCu27WOMobd0zFWo\nSpGNIL8X6z9GMiIXckdbs24eLVYsd2UU65dq5nic0v96czGhe3nnZgk3c0zw\n9BrLzVKx0JLvbKm1y8fNoNGkDdlYGl9bjNf2A/rlRkdCd1Qr6GrUWqn+TLmM\ntID6JL/PHMfRFOlYTIgV/jVFbAVI8o5qE4s/S/dJgKy+RUS4/F30ToBxOMfT\nxkZlYKxMIkBsxPApeX4YLbyFkX7JDAPy4hcNlKlEJFdodMPkNCUB7VZXoIOV\nKc5aXnA3CE+6CK8BF4hoBro/Z+1UFkyiN+yqxv+O0WnkQpPQX4XpsnoDxCpi\nNLRT5LC3mxqxWrV98FVGVSoyNanlcxGTaNPQw7uQKP1n+kEHgCHClJUAWbIL\nLPnKcjRE/bwfN3GOwUV1JH1dkwKtWGtcx75nGH6tLyVoaCs4WaRe6BdURpgG\ngUr0rruLXxtnnJkEftZOgbjmO08qBofkhOhtj9TEckZSSGabFPDp2grQZ5JH\nhV8+uREWvMgjtvp9yLF8LmsJZHMN0JBgn47zou3+84V5NAANXxL3RWCpNEji\nGwsyW4VRuymBmCp/3UUMS1b2SeomjcmQQF1hoqs0qiQnlW72ERJS+gTxZlTU\nP+f7i4V/uIC/PXpy2zRXwOmNYDtXmrmQXDzUrPClxG1KH+KakxfxMfMUS7n8\nAKOk\r\n=1nGf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCL3Cetxi1f5/mgh+Y6jy2xJ2oQXQm7PUW0du+FDpTW0wIhAJhhv1NHZuhUkF6qRZcoo248RjfGGhJn5wvikMpEx487"}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"viniciusmartin","email":"vinicius.martin@cravehq.com"},{"name":"luis.nascimento","email":"luis.nascimento@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"me@imwra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.14-alpha-fix-deps-6232.1.2_1644438743748_0.4392656726499695"},"_hasShrinkwrap":false},"5.1.14":{"name":"@crave/farmblocks-input-text","version":"5.1.14","description":"A form field to input simple text","author":{"name":"Crave Food Systems and AUTHORS"},"license":"MIT","main":"lib/index.js","publishConfig":{"access":"public"},"scripts":{"clean":"rm -rf lib","build":"yarn clean && babel --root-mode upward src -d lib --ignore 'src/**/*.test.js','src/**/*.story.js'"},"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"peerDependencies":{"@crave/farmblocks-icon":"^1.2.3","prop-types":"^15.8.0","react":"^17.0.2","recompose":"^0.30.0","styled-components":"^5.3.3"},"dependencies":{"@crave/farmblocks-button":"^10.0.13","@crave/farmblocks-hoc-input":"^9.1.7","@crave/farmblocks-link":"^6.0.11","@crave/farmblocks-theme":"^1.12.4"},"gitHead":"aed8b93e683ff6733de9c58d26f2e407f9b1aa73","contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"_id":"@crave/farmblocks-input-text@5.1.14","_nodeVersion":"16.13.1","_npmVersion":"lerna/4.0.0/node@v16.13.1+x64 (linux)","dist":{"integrity":"sha512-psF4FNE/fXClmRo2YT4kZvAKv9fGJsys1atsRMF9+TYygHjb9q3OU57CATdNZ8l8QNlR33mkiMbLvZuNlTt4Zw==","shasum":"f6679fae3b37283a62aa24752936e6605327903b","tarball":"https://registry.npmjs.org/@crave/farmblocks-input-text/-/farmblocks-input-text-5.1.14.tgz","fileCount":9,"unpackedSize":11482,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBSRwCRA9TVsSAnZWagAAVngP/27H3yRpnbbd7EjZTSs8\nNjyrd8rxSYzFABDKpos7JMm49l3vbwkgnrfov0i34aS+Nza7y+IWlTjJwtAK\nW1Vdw/SrW1JqOuEH6wvZD6Eoz1q5NPaZerwVw8BwpSzouVZOFFnjDRws5ZYl\n/+rRGMiDdp6E8TSa4jR/Yopzaf4lssLl6gWI4RU30y1upfxW0FfiwcXfGael\nSmrF9lhq9ZDG173b/wtCIpiAofsQxUgpqCi9Wx/dRYlY0prdU1WuB8p1FFVB\nfCzgTRsSElHJYx4ubwXLgy7T6jtJkxKFxOsX83K8Yxb99J/qZf95m1Gmxa0m\n1kIWgWitaA80i8q5DakTgLftN7n5rWix5gMPdlRqtqmbYwYsvMBXCyUZhd5R\nBBc+P2ILbrvtp35XnZSJXlFKEqRDNGBFyy//eCYZX2BW+szsf0K1HBqy+3BL\n2IoRzXql6ry3PGRjWVol4xD8WJpUpmyuxG6rfBh5Z5uKMoODfWc6n0fLb7Is\nv2LE9WLYmXX9V8AU/ua0ZFH5S2/IzgqDQwLQyBWn0ZgDWe1UYgzZLJRX1jOZ\nosmE4gZvQUwMgZTDI6QHuK+pquNRaUXIdTXt83q7eFeFrUouFcxHatdKr/9r\nPDLmURP1tPtia5GJysnV5rvMmj2CDVf7CfeI0DLc2uFBtnUIHISEv5YmsP5I\nPch7\r\n=gZc1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCcXwFCmyGBsBUCi5JpQox6XDNLhpYyXVR+WuU69YomxQIhALro0RF2+99/+sl/6VuBxdLyagn3TM5jtanUtZs+j9+l"}]},"_npmUser":{"name":"alcferreira","email":"alcf.2099@gmail.com"},"directories":{},"maintainers":[{"name":"viniciusmartin","email":"vinicius.martin@cravehq.com"},{"name":"luis.nascimento","email":"luis.nascimento@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"me@imwra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/farmblocks-input-text_5.1.14_1644504176502_0.8606728491292406"},"_hasShrinkwrap":false}},"readme":"# Farmblocks Text Input\n\nA form field to input simple text\n\n## Installation\n\n```\nnpm install @crave/farmblocks-input-text\n```\n\n## Usage\n\n```javascript\nimport React, { Component } from \"react\";\nimport { render } from \"react-dom\";\nimport TextInput, { TextAreaInput } from \"@crave/farmblocks-input-text\";\n\nconst root = document.createElement(\"div\");\ndocument.body.appendChild(root);\n\nrender(\n  <div>\n    <TextInput label=\"Text Field\" placeholder=\"enter a text...\" />\n    <TextInput disabled label=\"Disabled Field\" placeholder=\"disabled field\" />\n    <TextInput\n      label=\"Number Field\"\n      type=\"number\"\n      placeholder=\"enter a number\"\n    />\n    <TextAreaInput label=\"Text area input\" rows=\"4\" />\n  </div>,\n  root,\n);\n```\n\nThis component uses the html `input` element. So the APIs are very similar.\n\nFor example, `value`, `placeholder`, `disabled`, `maxLength`, `onChange` and\nothers not listed here, should work as expected, you can assume that the\nproperty will be forwarded to the core html input element. Ref.:\n[MDN &lt;input&gt;](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)\n\nFor more examples and details on the available props, [read the docs](https://cravefood.github.io/farmblocks/?path=/docs/form-text-input--basic).\n\n## License\n\nMIT\n","maintainers":[{"name":"viniciusmartin","email":"vinicius.martin@cravehq.com"},{"name":"luis.nascimento","email":"luis.nascimento@cravehq.com"},{"name":"seocam","email":"seocam@seocam.com"},{"name":"vnakamura","email":"hello@vnakamura.com"},{"name":"alcferreira","email":"alcf.2099@gmail.com"},{"name":"imwra","email":"me@imwra.com"}],"time":{"modified":"2022-06-12T16:44:47.053Z","created":"2017-12-04T19:36:27.003Z","0.2.0-alpha.274dc37a":"2017-12-04T19:36:27.003Z","0.2.0-alpha.ac905c8f":"2017-12-05T18:36:50.303Z","0.2.0-alpha.89b5bfb1":"2017-12-05T19:49:20.289Z","0.2.0-alpha.0cd080b2":"2017-12-07T11:02:59.744Z","0.2.0-alpha.2805e458":"2017-12-07T14:28:07.857Z","0.2.0-alpha.981b98e6":"2017-12-07T15:11:05.948Z","0.2.0-alpha.66f0e481":"2017-12-07T18:05:49.001Z","0.2.0-alpha.c5a69617":"2017-12-07T21:56:37.623Z","0.2.0-alpha.ab698c74":"2017-12-08T04:22:43.241Z","0.2.0-alpha.30dc3ea1":"2017-12-08T12:26:02.117Z","0.2.0-alpha.8f9f92a7":"2017-12-08T12:36:35.369Z","0.2.0-alpha.8057862e":"2017-12-08T12:57:17.760Z","0.2.0-alpha.c22b928c":"2017-12-08T13:36:57.620Z","0.2.0-alpha.6ac88d9c":"2017-12-08T13:57:23.540Z","0.2.0-alpha.c2fe7097":"2017-12-08T14:09:37.588Z","0.2.0":"2017-12-08T14:52:58.823Z","0.3.0-alpha.881b4b66":"2017-12-08T23:20:50.290Z","0.3.0-alpha.f70cbc78":"2017-12-11T16:39:09.248Z","0.3.0-alpha.951cd69c":"2017-12-11T16:46:52.246Z","0.3.0-alpha.a8021f44":"2017-12-11T19:40:17.438Z","0.3.0-alpha.97eaabca":"2017-12-11T19:46:02.243Z","0.3.0-alpha.a9f3f1d2":"2017-12-11T19:53:10.233Z","0.3.0-alpha.923ccab2":"2017-12-11T20:57:25.429Z","0.3.0-alpha.e432ae6b":"2017-12-11T22:28:09.221Z","0.3.0-alpha.30e6cef8":"2017-12-11T22:28:44.074Z","0.3.0-alpha.6bba4e6f":"2017-12-12T12:06:52.772Z","0.3.0-alpha.00f56c3c":"2017-12-12T13:01:00.234Z","0.3.0-alpha.0f00a4c9":"2017-12-14T11:03:20.047Z","0.3.0-alpha.c6b0f686":"2017-12-14T11:21:39.296Z","0.3.0-alpha.e1ed1a02":"2017-12-14T11:41:35.763Z","0.3.0-alpha.427db2f9":"2017-12-14T17:42:10.765Z","0.3.0-alpha.da10c733":"2017-12-15T01:10:15.058Z","0.3.0-alpha.1eee5381":"2017-12-15T02:24:53.994Z","0.3.0-alpha.7c914eb5":"2017-12-15T03:36:23.784Z","0.3.0-alpha.2d809d6c":"2017-12-16T21:38:41.093Z","0.3.0-alpha.685324e8":"2017-12-16T21:38:54.174Z","0.3.0-alpha.7b6a087e":"2017-12-17T08:02:50.137Z","0.3.0-alpha.8718775a":"2017-12-19T18:29:43.848Z","0.3.0-alpha.bb92ca41":"2017-12-19T19:54:25.695Z","0.3.0-alpha.a8873d97":"2017-12-19T20:28:29.730Z","0.3.0-alpha.b64b8fec":"2017-12-20T13:55:51.243Z","0.3.0-alpha.ca51be94":"2017-12-20T15:26:51.450Z","0.3.0-alpha.0ce36e8a":"2017-12-20T15:48:09.434Z","0.3.0-alpha.49b129d4":"2017-12-20T17:52:37.552Z","0.3.0-alpha.6da64de2":"2017-12-20T19:14:57.368Z","0.3.0-alpha.ca90896c":"2017-12-21T11:26:12.904Z","0.3.0-alpha.92d991c4":"2017-12-21T15:21:14.816Z","0.3.0-alpha.b12db607":"2017-12-26T15:11:50.212Z","0.3.0-alpha.4cca5443":"2017-12-26T18:05:08.796Z","0.3.0-alpha.c30d6699":"2017-12-26T18:08:19.485Z","0.3.0-alpha.d436acf7":"2017-12-26T18:24:42.104Z","0.3.0-alpha.842e0ad8":"2017-12-26T19:24:57.491Z","0.3.0-alpha.19661fc9":"2017-12-27T11:52:18.742Z","0.3.0-alpha.e9da9291":"2017-12-28T17:08:55.606Z","0.3.0-alpha.1aa99425":"2017-12-28T21:33:08.264Z","0.3.0-alpha.0a1117d5":"2018-01-02T16:08:43.216Z","0.3.0-alpha.086503bd":"2018-01-02T16:17:02.980Z","0.3.0-alpha.ceb78805":"2018-01-02T16:26:07.811Z","0.3.0-alpha.7d62b5be":"2018-01-02T17:16:27.985Z","0.3.0-alpha.6064f66f":"2018-01-02T17:47:42.817Z","0.3.0-alpha.c88389ac":"2018-01-02T18:14:47.368Z","0.3.0-alpha.8f6fa6c2":"2018-01-02T18:21:10.705Z","0.3.0-alpha.f57a4ea1":"2018-01-02T20:17:57.096Z","0.3.0-alpha.ac1a9d7f":"2018-01-03T11:22:53.176Z","0.2.1":"2018-01-03T11:38:39.811Z","0.3.0-alpha.e2690815":"2018-01-03T12:44:31.157Z","0.3.0-alpha.bd8734c8":"2018-01-03T19:06:53.857Z","0.2.2":"2018-01-04T12:14:13.510Z","0.3.0-alpha.bb6293ed":"2018-01-06T20:08:19.206Z","0.3.0-alpha.8a33ca18":"2018-01-06T21:23:02.114Z","0.3.0-alpha.d467d10d":"2018-01-08T21:24:08.990Z","0.3.0-alpha.3a8e629b":"2018-01-09T17:39:28.673Z","0.3.0-alpha.04dd2b78":"2018-01-09T18:48:37.354Z","0.3.0-alpha.0d246ed4":"2018-01-09T19:39:16.674Z","0.3.0-alpha.88004463":"2018-01-09T19:41:20.314Z","0.3.0-alpha.52d04f4b":"2018-01-10T13:02:49.962Z","0.3.0-alpha.d5ef6a8a":"2018-01-10T14:14:22.779Z","0.3.0-alpha.e5933b1b":"2018-01-10T18:23:04.241Z","0.3.0-alpha.0b59d904":"2018-01-11T10:57:45.864Z","0.3.0-alpha.69924a92":"2018-01-11T11:04:32.811Z","0.3.0-alpha.966e9252":"2018-01-11T11:07:19.679Z","0.3.0-alpha.ff765b02":"2018-01-11T11:13:28.262Z","0.3.0-alpha.88a3d85f":"2018-01-12T16:15:37.960Z","0.3.0-alpha.9660a70d":"2018-01-12T20:39:23.046Z","0.3.0-alpha.da3401b7":"2018-01-15T17:19:48.631Z","0.3.0-alpha.ad4af0bf":"2018-01-16T15:26:24.211Z","0.3.0-alpha.72f7861d":"2018-01-16T15:27:51.971Z","0.3.0-alpha.c7f237ec":"2018-01-16T15:30:07.771Z","0.3.0-alpha.72a11852":"2018-01-16T15:56:25.844Z","0.3.0-alpha.f1639c52":"2018-01-16T16:03:03.803Z","0.3.0-alpha.37f958b0":"2018-01-16T16:03:40.154Z","0.3.0-alpha.7940b619":"2018-01-16T17:03:18.704Z","0.3.0-alpha.508be306":"2018-01-16T17:47:12.750Z","0.3.0-alpha.72afcc6d":"2018-01-16T19:34:09.918Z","0.3.0-alpha.44faf0a5":"2018-01-16T21:29:43.221Z","0.3.0-alpha.0bb79ce5":"2018-01-16T21:31:18.647Z","0.3.0-alpha.99d6ab88":"2018-01-17T11:05:24.684Z","0.3.0-alpha.435841b2":"2018-01-17T11:31:03.194Z","0.3.0-alpha.3c3d2f95":"2018-01-17T12:39:30.812Z","0.3.0-alpha.a4bbf04a":"2018-01-17T16:05:15.704Z","0.3.0-alpha.05aa3a60":"2018-01-17T18:21:37.202Z","0.3.0-alpha.1c2355ec":"2018-01-17T18:35:21.484Z","0.3.0-alpha.a4f724ea":"2018-01-17T18:59:19.661Z","0.3.0-alpha.b642a866":"2018-01-17T18:59:23.189Z","0.3.0-alpha.e15f535a":"2018-01-17T19:25:49.172Z","0.3.0-alpha.d92be909":"2018-01-17T19:26:50.420Z","0.3.0-alpha.caa5275e":"2018-01-17T19:41:48.108Z","0.3.0-alpha.7012925a":"2018-01-17T19:48:22.859Z","0.3.0-alpha.6c3335fc":"2018-01-18T11:19:52.675Z","0.3.0-alpha.e6b4f216":"2018-01-18T12:33:27.692Z","0.3.0-alpha.fbf771da":"2018-01-18T13:20:06.241Z","0.3.0-alpha.122361b5":"2018-01-18T13:20:37.673Z","0.3.0-alpha.5696eecf":"2018-01-18T13:30:00.892Z","0.3.0-alpha.40b945a3":"2018-01-18T13:34:39.259Z","0.3.0-alpha.2b628ef5":"2018-01-18T13:40:44.920Z","0.3.0-alpha.1c8fea83":"2018-01-18T13:45:30.665Z","0.3.0-alpha.dce1d648":"2018-01-18T14:11:06.133Z","0.3.0-alpha.6d250d81":"2018-01-18T14:14:44.802Z","1.0.0":"2018-01-18T14:22:58.212Z","0.3.0-alpha.2ddd8607":"2018-01-18T14:24:58.414Z","1.1.0-alpha.c94904da":"2018-01-18T14:29:46.145Z","1.1.0-alpha.9152ff6e":"2018-01-18T15:01:51.592Z","1.0.1":"2018-01-18T15:09:37.076Z","1.1.0-alpha.edebbebe":"2018-01-18T15:16:39.814Z","1.1.0-alpha.a99690bf":"2018-01-18T15:47:07.782Z","1.1.0-alpha.6223518c":"2018-01-18T16:40:01.211Z","1.1.0-alpha.173aa547":"2018-01-18T17:23:28.991Z","1.1.0-alpha.26ead46b":"2018-01-21T22:19:13.583Z","1.1.0-alpha.67392dee":"2018-01-21T22:19:29.080Z","1.1.0-alpha.cc6afb85":"2018-01-22T14:42:48.169Z","1.1.0-alpha.1bc89e42":"2018-01-22T15:17:56.319Z","1.1.0-alpha.bc5712cc":"2018-01-22T19:08:02.585Z","1.1.0-alpha.7302ebb3":"2018-01-23T12:23:37.013Z","1.1.0-alpha.4e7595c8":"2018-01-23T16:04:45.056Z","1.1.0-alpha.e6a26cb9":"2018-01-23T16:22:21.719Z","1.1.0-alpha.2c979b0a":"2018-01-23T17:27:21.482Z","1.1.0":"2018-01-23T17:34:05.754Z","1.2.0-alpha.3c32b1cb":"2018-01-24T19:44:32.842Z","1.2.0-alpha.86be4ec4":"2018-01-25T13:05:05.761Z","1.2.0-alpha.65457599":"2018-01-25T13:33:17.433Z","1.2.0-alpha.b29e8642":"2018-01-25T13:42:09.653Z","1.2.0-alpha.c7705635":"2018-01-25T17:07:47.910Z","1.2.0-alpha.7c95d821":"2018-01-26T14:20:43.734Z","1.2.0-alpha.ddb299e4":"2018-01-26T18:25:36.876Z","1.2.0-alpha.01d1bedb":"2018-01-26T19:19:24.338Z","1.2.0-alpha.dabda2fc":"2018-01-26T19:41:39.213Z","1.2.0-alpha.adc7db47":"2018-01-26T20:32:15.718Z","1.2.0-alpha.a6f9ff6e":"2018-01-29T12:56:28.353Z","1.2.0-alpha.248886ac":"2018-01-29T13:06:11.620Z","1.2.0-alpha.89947df1":"2018-01-29T13:49:24.948Z","1.1.1":"2018-01-29T15:45:55.482Z","1.2.0-alpha.4ae95cd3":"2018-01-30T19:21:59.197Z","1.2.0-alpha.8bed828f":"2018-02-01T19:35:47.598Z","1.2.0-alpha.7a6345d0":"2018-02-01T20:16:53.256Z","1.2.0-alpha.f0847fe4":"2018-02-02T10:30:18.319Z","1.2.0-alpha.d2f9c44a":"2018-02-02T11:05:25.636Z","1.2.0-alpha.81525f03":"2018-02-02T12:27:36.305Z","1.2.0-alpha.1d453a48":"2018-02-02T16:17:17.173Z","1.2.0-alpha.1d964d63":"2018-02-02T17:46:59.501Z","1.2.0-alpha.06e7a5b8":"2018-02-05T09:35:36.742Z","1.2.0-alpha.2aef1aa2":"2018-02-05T09:38:40.726Z","1.2.0-alpha.a68e0700":"2018-02-05T14:40:31.679Z","1.2.0-alpha.bb2ec3b6":"2018-02-05T14:43:30.070Z","1.2.0-alpha.f79f943a":"2018-02-05T16:38:27.005Z","1.2.0-alpha.ce51f213":"2018-02-05T16:50:32.909Z","1.2.0-alpha.3134216a":"2018-02-05T17:01:03.745Z","1.2.0-alpha.801437d8":"2018-02-06T18:30:01.029Z","1.2.0-alpha.9b1c1d2e":"2018-02-06T18:33:37.500Z","1.2.0-alpha.cc1489f2":"2018-02-06T18:36:58.428Z","1.2.0-alpha.4b468a5d":"2018-02-06T19:16:50.252Z","1.2.0-alpha.0572d73d":"2018-02-06T19:29:55.109Z","1.2.0-alpha.cedbd9c5":"2018-02-06T20:03:49.587Z","1.2.0-alpha.6521802b":"2018-02-07T01:59:00.591Z","1.2.0-alpha.171ee1d4":"2018-02-07T13:57:03.707Z","1.2.0-alpha.2820f6a8":"2018-02-07T14:52:48.133Z","1.2.0-alpha.6fe9f75e":"2018-02-07T15:45:35.860Z","1.2.0-alpha.4e07dafd":"2018-02-07T16:06:07.764Z","1.2.0-alpha.e9819633":"2018-02-07T16:20:17.561Z","1.2.0-alpha.c2cdf8a7":"2018-02-07T18:24:30.299Z","1.2.0-alpha.984fee26":"2018-02-07T18:53:27.088Z","1.2.0-alpha.de36eddf":"2018-02-07T19:06:34.945Z","1.1.2":"2018-02-07T20:21:30.140Z","1.2.0-alpha.e0ecf90c":"2018-02-07T20:32:36.711Z","1.2.0-alpha.5acde5e4":"2018-02-07T20:40:16.499Z","1.2.0-alpha.73d44a88":"2018-02-07T20:48:42.155Z","1.1.3":"2018-02-08T16:46:23.693Z","1.2.0-alpha.97f56d1d":"2018-02-09T11:40:11.431Z","1.2.0-alpha.e80a22b5":"2018-02-09T12:05:49.727Z","1.2.0-alpha.52cec434":"2018-02-09T16:17:23.444Z","1.2.0-alpha.9b85ef7f":"2018-02-09T17:03:53.107Z","1.1.4":"2018-02-09T17:30:20.457Z","1.2.0-alpha.65925022":"2018-02-09T17:30:31.328Z","1.2.0-alpha.7c31f816":"2018-02-09T17:37:49.795Z","1.2.0-alpha.752667fa":"2018-02-14T17:04:37.688Z","1.2.0-alpha.cd343c62":"2018-02-14T17:17:40.178Z","1.1.5":"2018-02-14T18:46:11.264Z","1.2.0-alpha.691f8308":"2018-02-14T21:09:21.441Z","1.2.0-alpha.ab2883ac":"2018-02-15T13:04:21.263Z","1.1.6":"2018-02-15T16:09:00.741Z","1.2.0-alpha.50b0d2d3":"2018-02-15T20:42:50.012Z","1.2.0-alpha.168f0cb9":"2018-02-15T20:47:09.051Z","1.2.0-alpha.cfa0eb52":"2018-02-19T12:11:35.629Z","1.2.0-alpha.ed4f9e62":"2018-02-19T14:41:30.196Z","1.2.0-alpha.ac715917":"2018-02-19T14:47:14.150Z","1.2.0-alpha.5c7d34e9":"2018-02-20T19:48:53.284Z","1.2.0-alpha.92969b58":"2018-02-21T19:36:36.647Z","1.2.0-alpha.902a38de":"2018-02-21T19:50:53.264Z","1.2.0-alpha.ca52a343":"2018-02-22T13:19:47.978Z","1.2.0-alpha.3c54c768":"2018-02-22T17:48:17.273Z","1.2.0-alpha.a3a35fea":"2018-02-22T17:50:40.972Z","1.2.0-alpha.2bb04706":"2018-02-22T20:14:20.839Z","1.2.0-alpha.358a62d1":"2018-02-24T12:16:57.422Z","1.2.0-alpha.c751892e":"2018-02-24T12:17:40.741Z","1.2.0-alpha.dfa3e112":"2018-02-27T18:03:19.311Z","1.2.0-alpha.2cae8f1a":"2018-03-01T14:29:43.967Z","1.2.0-alpha.6c857b04":"2018-03-01T14:33:15.907Z","1.2.0-alpha.e43ee4dc":"2018-03-01T14:36:03.780Z","1.2.0-alpha.9948bb04":"2018-03-01T14:55:16.986Z","1.2.0-alpha.47bbc810":"2018-03-01T15:04:25.426Z","1.2.0-alpha.7d883b2b":"2018-03-01T15:07:50.625Z","1.2.0-alpha.4fe9b155":"2018-03-01T15:20:57.618Z","1.2.0-alpha.5e2394d5":"2018-03-01T17:00:45.220Z","1.2.0-alpha.3339366d":"2018-03-02T17:30:07.737Z","1.2.0-alpha.15d60a1d":"2018-03-02T18:02:55.330Z","1.2.0-alpha.4689ce1b":"2018-03-02T18:12:39.032Z","1.2.0-alpha.55b75a04":"2018-03-06T18:27:11.394Z","1.2.0-alpha.bc9dca28":"2018-03-06T21:32:59.666Z","1.2.0-alpha.81b4b44c":"2018-03-07T14:05:40.289Z","1.2.0-alpha.53e87982":"2018-03-07T18:23:45.191Z","1.2.0-alpha.df4193e4":"2018-03-07T18:49:13.119Z","1.2.0-alpha.c5e3d9b3":"2018-03-08T00:01:00.065Z","1.2.0-alpha.9fb9a7b9":"2018-03-08T00:21:35.411Z","1.2.0-alpha.12deed82":"2018-03-08T14:08:32.648Z","1.2.0-alpha.86932e17":"2018-03-08T15:23:35.495Z","1.2.0-alpha.8677a9a6":"2018-03-08T19:59:36.149Z","1.2.0-alpha.d7e2e285":"2018-03-09T17:21:47.968Z","1.2.0-alpha.36c33f9a":"2018-03-09T17:30:29.077Z","1.2.0-alpha.8720692a":"2018-03-12T12:29:26.958Z","1.2.0-alpha.6b8590c0":"2018-03-12T15:13:14.768Z","1.2.0-alpha.388979f8":"2018-03-12T15:17:27.790Z","1.2.0-alpha.e1b4e0bf":"2018-03-12T17:40:02.206Z","1.2.0-alpha.c9c9432d":"2018-03-12T17:58:30.958Z","1.2.0-alpha.3978e1ba":"2018-03-13T13:20:29.736Z","1.2.0-alpha.8f4b3437":"2018-03-13T13:21:54.647Z","1.2.0-alpha.543b1306":"2018-03-13T14:34:12.583Z","1.2.0-alpha.ef9f2f12":"2018-03-13T14:49:06.130Z","1.2.0-alpha.499c92eb":"2018-03-13T16:22:30.649Z","1.2.0-alpha.2683dfca":"2018-03-13T17:22:35.419Z","1.2.0-alpha.9c34a990":"2018-03-13T17:30:22.102Z","1.2.0-alpha.88a4310b":"2018-03-13T17:54:53.918Z","1.1.7":"2018-03-13T18:43:50.381Z","1.2.0-alpha.d6fe25e3":"2018-03-13T20:08:38.350Z","1.2.0-alpha.760c5088":"2018-03-14T12:48:41.665Z","1.2.0-alpha.66679c4f":"2018-03-14T14:01:14.150Z","1.1.8":"2018-03-14T14:22:56.183Z","1.2.0-alpha.7615e6fa":"2018-03-14T17:56:56.039Z","1.2.0-alpha.26941b71":"2018-03-14T18:02:49.192Z","1.2.0-alpha.c41d0cab":"2018-03-14T18:06:31.545Z","1.2.0-alpha.ee0b6b96":"2018-03-14T19:07:40.808Z","1.2.0-alpha.f4d95bec":"2018-03-15T11:54:04.456Z","1.2.0-alpha.1cb5bff7":"2018-03-15T14:55:38.820Z","1.2.0-alpha.7bf79ebe":"2018-03-15T15:00:44.250Z","1.1.9":"2018-03-15T15:04:21.774Z","1.2.0-alpha.b15bc255":"2018-03-15T17:52:41.439Z","1.2.0":"2018-03-15T18:20:25.945Z","1.2.0-alpha.0e6bc9f8":"2018-03-15T18:20:34.380Z","1.3.0-alpha.8dc14280":"2018-03-15T19:19:30.434Z","1.2.0-alpha.8ffe671f":"2018-03-16T18:14:38.190Z","1.2.0-alpha.d39611a3":"2018-03-16T18:37:30.890Z","1.2.0-alpha.4dcf9d8b":"2018-03-16T18:39:37.587Z","1.2.0-alpha.b68c91dc":"2018-03-19T11:47:52.648Z","1.2.0-alpha.4078b107":"2018-03-19T12:08:29.051Z","1.3.0-alpha.c4761b78":"2018-03-19T15:17:58.883Z","1.2.0-alpha.4ad7774f":"2018-03-19T17:06:30.495Z","1.2.0-alpha.e5432d16":"2018-03-19T18:48:21.243Z","1.3.0-alpha.52f23955":"2018-03-19T19:42:45.807Z","1.3.0-alpha.cd64f3d0":"2018-03-20T12:38:10.735Z","1.3.0-alpha.c7796535":"2018-03-20T17:26:13.606Z","1.3.0-alpha.6c3920ea":"2018-03-20T17:41:52.439Z","1.3.0-alpha.c15cfab2":"2018-03-20T17:53:04.620Z","1.3.0-alpha.8d069b3e":"2018-03-20T20:01:46.818Z","1.3.0-alpha.0d8025f3":"2018-03-20T20:47:22.160Z","1.3.0-alpha.ee27b8f7":"2018-03-20T21:01:45.445Z","1.3.0-alpha.b20e5c2d":"2018-03-21T12:55:25.277Z","1.3.0-alpha.04e0eb48":"2018-03-22T18:39:27.299Z","1.3.0-alpha.5df50977":"2018-03-23T11:33:58.992Z","1.3.0-alpha.0d5439dd":"2018-03-23T12:37:33.863Z","1.3.0-alpha.cd3bfde9":"2018-03-23T12:46:22.281Z","1.3.0-alpha.d91740f5":"2018-03-23T13:01:15.502Z","1.3.0-alpha.1ad366bf":"2018-03-23T13:50:38.983Z","1.2.1":"2018-03-23T17:49:09.291Z","1.3.0-alpha.9ac95b05":"2018-03-23T17:54:35.724Z","1.3.0-alpha.eb7e13e2":"2018-03-23T17:55:09.782Z","1.3.0-alpha.6b203b54":"2018-03-23T18:13:18.160Z","1.3.0-alpha.b067b771":"2018-03-24T18:26:19.973Z","1.3.0-alpha.1e9d369c":"2018-03-26T13:29:44.160Z","1.3.0-alpha.ed271340":"2018-03-26T13:51:33.706Z","1.3.0-alpha.a99e4a7d":"2018-03-26T14:46:52.676Z","1.3.0-alpha.3fb597c5":"2018-03-26T17:54:09.516Z","1.3.0-alpha.bc8be1ec":"2018-03-26T18:39:19.672Z","1.3.0-alpha.77aeb025":"2018-03-26T19:46:06.151Z","1.3.0-alpha.276d5592":"2018-03-27T12:47:08.681Z","1.3.0-alpha.bf2cda46":"2018-03-27T12:49:00.488Z","1.3.0-alpha.101d5b54":"2018-03-27T13:05:43.174Z","1.3.0-alpha.2af0c4b9":"2018-03-27T13:59:33.868Z","1.3.0-alpha.f36a051a":"2018-03-27T16:38:17.496Z","1.3.0-alpha.dbbb988a":"2018-03-27T16:50:03.676Z","1.3.0-alpha.9888d709":"2018-03-27T18:13:26.077Z","1.3.0-alpha.7c579cb8":"2018-03-27T20:17:30.888Z","1.3.0-alpha.9c53f92f":"2018-03-27T20:32:01.982Z","1.3.0-alpha.094a4102":"2018-03-27T20:48:46.278Z","1.3.0-alpha.37c381c3":"2018-03-28T13:56:23.733Z","1.3.0-alpha.4d554aed":"2018-03-28T16:13:29.909Z","1.3.0-alpha.44d32a29":"2018-03-28T17:40:20.181Z","1.3.0-alpha.cd85651e":"2018-03-28T17:41:40.055Z","1.3.0-alpha.3d2e39bf":"2018-03-28T17:48:38.988Z","1.3.0-alpha.f66e87c2":"2018-03-28T18:03:22.439Z","1.3.0-alpha.6977ffda":"2018-03-28T18:13:28.253Z","1.3.0-alpha.c235006c":"2018-03-28T18:22:41.020Z","1.3.0-alpha.5c4d01bb":"2018-03-28T20:35:20.620Z","1.3.0-alpha.0ab41057":"2018-03-28T21:27:24.607Z","1.3.0-alpha.af18658d":"2018-03-29T11:31:32.287Z","1.3.0-alpha.65028b83":"2018-03-29T12:16:29.445Z","1.3.0-alpha.291252a4":"2018-03-29T12:17:27.536Z","1.3.0-alpha.6203a493":"2018-03-29T14:56:17.035Z","1.3.0-alpha.49d9566a":"2018-03-29T15:14:11.569Z","1.3.0-alpha.0d6e2bdf":"2018-03-29T15:33:13.201Z","1.3.0-alpha.c7e8b8b9":"2018-03-29T18:11:06.206Z","1.3.0-alpha.4be26c61":"2018-03-29T18:51:33.948Z","1.3.0-alpha.04115e62":"2018-03-29T18:52:58.426Z","1.3.0-alpha.17457c59":"2018-04-02T12:29:24.972Z","1.3.0-alpha.26a5c31a":"2018-04-02T12:33:48.600Z","1.3.0-alpha.b7a11e94":"2018-04-02T14:02:13.951Z","1.3.0-alpha.161df42e":"2018-04-02T14:23:17.792Z","1.3.0-alpha.77494df4":"2018-04-02T14:26:01.541Z","1.3.0-alpha.06fd4877":"2018-04-02T18:14:26.972Z","1.3.0-alpha.97b7b3f5":"2018-04-02T18:16:11.327Z","1.3.0-alpha.6e1775ed":"2018-04-02T18:47:21.789Z","1.3.0-alpha.9c3e64ef":"2018-04-04T15:23:28.011Z","1.2.2":"2018-04-04T18:43:13.215Z","1.3.0-alpha.90450a0d":"2018-04-04T18:54:28.756Z","1.3.0-alpha.09cba65f":"2018-04-05T18:13:24.746Z","1.2.3":"2018-04-05T19:35:29.094Z","1.3.0-alpha.4f10e4fa":"2018-04-06T18:16:27.156Z","1.3.0-alpha.8eb423f8":"2018-04-08T16:13:56.391Z","1.3.0-alpha.f381ad86":"2018-04-09T14:38:28.048Z","1.3.0-alpha.e1faa468":"2018-04-09T22:04:51.292Z","1.3.0-alpha.d21f2021":"2018-04-10T13:39:17.579Z","1.3.0-alpha.30428b8b":"2018-04-10T17:47:47.385Z","1.2.4":"2018-04-10T18:16:02.907Z","1.3.0-alpha.1462eea5":"2018-04-10T20:40:26.019Z","1.2.5":"2018-04-11T12:03:42.987Z","1.3.0-alpha.be92736d":"2018-04-11T19:27:38.419Z","1.3.0-alpha.c741e1d1":"2018-04-12T12:35:04.867Z","1.3.0-alpha.6ceacecc":"2018-04-12T14:36:30.179Z","1.3.0-alpha.0e264232":"2018-04-12T15:08:22.021Z","1.3.0-alpha.7bfb746f":"2018-04-12T16:35:06.736Z","1.3.0-alpha.2c2e80e4":"2018-04-12T17:18:58.500Z","1.3.0-alpha.8c7247a1":"2018-04-12T17:19:54.352Z","1.2.6":"2018-04-12T18:04:32.764Z","1.3.0-alpha.78e42623":"2018-04-12T19:19:40.356Z","1.3.0-alpha.567db8b1":"2018-04-12T20:47:49.240Z","1.3.0-alpha.0f8988ee":"2018-04-12T21:09:31.262Z","1.3.0-alpha.c1e5c084":"2018-04-17T13:16:09.226Z","1.2.7":"2018-04-17T13:47:22.955Z","1.3.0-alpha.c992534f":"2018-04-19T10:28:37.292Z","1.3.0-alpha.8cf38478":"2018-04-19T10:30:48.334Z","1.3.0-alpha.0129661a":"2018-04-26T14:58:13.040Z","1.3.0-alpha.d78965e7":"2018-05-03T20:16:46.193Z","1.3.0-alpha.1005c7cb":"2018-05-04T13:39:15.887Z","1.3.0-alpha.26f43c6d":"2018-05-08T17:53:23.488Z","1.3.0-alpha.fcec25ae":"2018-05-08T18:30:34.547Z","1.3.0-alpha.cdcc2d7c":"2018-05-08T19:05:01.766Z","1.3.0-alpha.bae3ce7b":"2018-05-08T19:37:44.362Z","1.3.0-alpha.034eb3d8":"2018-05-08T19:38:35.622Z","1.3.0-alpha.5d55608d":"2018-05-09T13:11:20.024Z","1.3.0-alpha.ec36c80f":"2018-05-09T20:05:55.734Z","1.3.0-alpha.e0b35a1d":"2018-05-09T21:50:19.964Z","1.3.0-alpha.e85f3855":"2018-05-10T02:54:29.104Z","1.3.0-alpha.a38583d8":"2018-05-10T03:44:15.227Z","1.2.8":"2018-05-10T13:18:23.088Z","1.3.0-alpha.0bd8b165":"2018-05-10T13:22:17.576Z","1.3.0-alpha.33e525d9":"2018-05-10T13:48:48.686Z","1.3.0-alpha.1d892ca9":"2018-05-10T17:44:49.115Z","1.3.0-alpha.3887f597":"2018-05-10T18:12:40.052Z","1.3.0-alpha.cd38ec77":"2018-05-10T19:03:15.317Z","1.2.9":"2018-05-10T19:11:20.356Z","1.3.0-alpha.e18e8a8b":"2018-05-10T20:17:21.505Z","1.3.0-alpha.4b8a1066":"2018-05-11T03:15:24.002Z","1.3.0-alpha.1864d583":"2018-05-11T15:00:51.527Z","1.3.0-alpha.94b0e8c4":"2018-05-11T17:16:11.222Z","1.3.0-alpha.dc0d3bff":"2018-05-11T18:48:25.384Z","1.3.0-alpha.c727698d":"2018-05-11T19:06:31.531Z","1.3.0-alpha.5219502d":"2018-05-11T19:16:49.086Z","1.3.0-alpha.79a9202f":"2018-05-14T13:09:57.416Z","1.3.0-alpha.a240bc7c":"2018-05-14T17:01:31.406Z","1.2.10":"2018-05-14T17:20:19.832Z","1.3.0-alpha.fe1c30e4":"2018-05-15T13:48:53.077Z","1.2.11":"2018-05-15T14:00:13.185Z","1.3.0-alpha.ebdff3b6":"2018-05-15T14:56:31.955Z","1.3.0-alpha.05c39b0b":"2018-05-15T15:16:43.521Z","1.3.0-alpha.283f3e57":"2018-05-15T16:41:41.847Z","1.3.0-alpha.fbea593b":"2018-05-15T18:48:34.642Z","1.3.0-alpha.665fb022":"2018-05-15T20:12:11.285Z","1.3.0-alpha.d34e607e":"2018-05-16T17:04:26.951Z","1.2.12":"2018-05-16T18:15:23.064Z","1.3.0-alpha.b21299eb":"2018-05-16T18:21:54.172Z","1.3.0-alpha.27740892":"2018-05-17T20:15:59.531Z","1.3.0-alpha.f5f67192":"2018-05-18T10:39:19.104Z","1.3.0-alpha.f0a754a0":"2018-05-21T13:05:44.418Z","1.3.0-alpha.03669b3a":"2018-05-21T18:07:10.112Z","1.3.0-alpha.b98cb000":"2018-05-22T13:05:06.399Z","1.3.0-alpha.976fe4a3":"2018-05-22T17:43:54.035Z","1.3.0-alpha.493dda93":"2018-05-22T19:26:54.325Z","1.3.0-alpha.302e188b":"2018-05-22T21:00:17.575Z","1.3.0-alpha.b431ef2a":"2018-05-22T21:12:31.360Z","1.3.0-alpha.5fd51193":"2018-05-22T21:16:01.106Z","1.2.13":"2018-05-22T21:20:15.731Z","1.3.0-alpha.8df66644":"2018-05-22T21:23:21.692Z","1.3.0-alpha.3dd61dd4":"2018-05-22T22:38:04.655Z","1.3.0-alpha.4b8910e8":"2018-05-22T22:40:47.157Z","1.3.0-alpha.62810329":"2018-05-23T01:14:26.320Z","1.2.14":"2018-05-23T02:00:49.888Z","1.3.0-alpha.66c6eee0":"2018-05-24T18:24:58.133Z","1.3.0-alpha.65bc7857":"2018-05-30T18:33:39.432Z","1.3.0-alpha.9c90969c":"2018-05-30T21:39:48.453Z","1.3.0-alpha.f8bf622e":"2018-05-30T22:26:33.811Z","1.3.0-alpha.e2efe846":"2018-05-30T22:43:58.651Z","1.3.0-alpha.4f0abefc":"2018-05-30T22:54:56.595Z","1.3.0-alpha.075a0b90":"2018-05-30T22:59:55.691Z","1.3.0-alpha.175558f5":"2018-05-31T13:22:28.708Z","1.3.0-alpha.f00009ac":"2018-05-31T19:13:20.325Z","1.3.0-alpha.352eb4bc":"2018-05-31T22:37:34.154Z","1.3.0-alpha.8411929c":"2018-06-01T12:39:55.127Z","1.3.0-alpha.e2e9b18f":"2018-06-01T13:24:07.863Z","1.3.0-alpha.5c70846a":"2018-06-01T15:04:08.809Z","1.3.0-alpha.acc047c6":"2018-06-04T12:52:07.425Z","1.3.0-alpha.7831b2c5":"2018-06-04T16:06:15.737Z","1.3.0-alpha.7201583d":"2018-06-04T16:41:55.836Z","1.3.0-alpha.8b612f58":"2018-06-04T21:13:11.512Z","1.3.0-alpha.ad2b319f":"2018-06-04T21:31:24.619Z","1.3.0-alpha.0d62d4d0":"2018-06-06T01:15:14.244Z","1.3.0-alpha.8675d26f":"2018-06-06T13:02:30.803Z","1.3.0-alpha.1660e930":"2018-06-06T15:43:49.380Z","1.3.0-alpha.b47b1f3a":"2018-06-06T18:39:36.326Z","1.3.0-alpha.0d24ee07":"2018-06-06T21:01:26.629Z","1.3.0-alpha.eded803b":"2018-06-06T21:41:32.973Z","1.3.0-alpha.950ba985":"2018-06-07T00:09:38.504Z","1.3.0-alpha.78eaebdb":"2018-06-07T00:25:41.833Z","1.3.0-alpha.9afde923":"2018-06-07T13:16:58.074Z","1.3.0-alpha.03c69cf0":"2018-06-07T17:55:55.743Z","1.3.0-alpha.a433646b":"2018-06-07T20:34:00.156Z","1.3.0-alpha.bb4b64fd":"2018-06-08T13:22:11.226Z","1.2.15":"2018-06-08T14:28:42.170Z","1.3.0-alpha.d8773cb2":"2018-06-08T15:00:46.427Z","1.3.0-alpha.448da3a5":"2018-06-11T12:53:18.602Z","1.3.0-alpha.6fef9195":"2018-06-11T16:45:48.734Z","1.3.0-alpha.3684de82":"2018-06-11T20:37:12.512Z","1.3.0-alpha.6d5b7b13":"2018-06-12T12:47:56.869Z","1.3.0-alpha.ded52547":"2018-06-12T14:03:30.818Z","1.3.0-alpha.af7cb427":"2018-06-12T18:02:55.451Z","1.3.0-alpha.db16d392":"2018-06-12T18:58:17.497Z","1.3.0-alpha.26aa4e30":"2018-06-12T19:35:46.544Z","1.2.16":"2018-06-12T20:24:26.964Z","1.3.0-alpha.9ee3ced1":"2018-06-14T12:55:58.000Z","1.3.0-alpha.ad61a982":"2018-06-14T12:59:56.989Z","1.3.0-alpha.ea5a0d58":"2018-06-14T13:42:41.395Z","1.3.0-alpha.7d3f778a":"2018-06-15T05:17:30.037Z","1.3.0-alpha.21f71177":"2018-06-15T14:07:34.644Z","1.3.0-alpha.29be50c6":"2018-06-15T16:30:56.317Z","1.3.0-alpha.e0ff2bff":"2018-06-15T20:23:14.329Z","1.3.0-alpha.90dae1af":"2018-06-15T20:30:14.554Z","1.3.0-alpha.9f1e5d50":"2018-06-15T20:58:31.137Z","1.3.0-alpha.f9c280fc":"2018-06-15T22:50:29.543Z","1.3.0-alpha.25243305":"2018-06-18T14:11:19.744Z","1.3.0-alpha.b69f29ae":"2018-06-18T14:33:44.325Z","1.3.0-alpha.ce9d680a":"2018-06-18T14:50:09.766Z","1.3.0-alpha.8d708914":"2018-06-18T14:51:57.067Z","1.3.0-alpha.d9684102":"2018-06-18T14:56:05.208Z","1.3.0-alpha.b60cce82":"2018-06-18T15:03:23.617Z","1.3.0-alpha.482ea003":"2018-06-18T16:53:55.553Z","1.3.0-alpha.e490da08":"2018-06-18T20:00:56.740Z","1.2.17":"2018-06-18T20:30:29.444Z","1.3.0-alpha.012bbd65":"2018-06-18T20:48:42.258Z","1.3.0-alpha.d196f55d":"2018-06-18T21:07:42.650Z","1.3.0-alpha.4dceb2e5":"2018-06-18T21:07:58.507Z","1.3.0-alpha.df743bb5":"2018-06-19T16:27:39.424Z","1.3.0-alpha.0f95a3f8":"2018-06-19T16:39:15.646Z","1.3.0-alpha.093723bd":"2018-06-19T17:03:07.056Z","1.3.0-alpha.029d6be5":"2018-06-19T17:15:16.238Z","1.3.0-alpha.d5b210b1":"2018-06-19T17:16:32.543Z","1.3.0-alpha.d601a802":"2018-06-19T17:25:40.605Z","1.3.0-alpha.87d58a89":"2018-06-19T17:25:59.445Z","1.3.0-alpha.1347baf4":"2018-06-19T17:28:49.230Z","1.3.0-alpha.7833baa8":"2018-06-19T17:34:40.721Z","1.3.0-alpha.c05cea18":"2018-06-19T17:42:42.986Z","1.3.0-alpha.854b6ab4":"2018-06-19T18:38:25.020Z","1.3.0-alpha.b050c5d5":"2018-06-19T21:17:08.436Z","1.3.0-alpha.718793ee":"2018-06-20T12:45:38.260Z","1.3.0-alpha.5d1d8c42":"2018-06-20T12:55:27.755Z","1.3.0-alpha.d943481c":"2018-06-20T15:22:44.371Z","1.3.0-alpha.f2eecb53":"2018-06-20T15:54:27.240Z","1.3.0-alpha.7ef110eb":"2018-06-20T18:04:25.862Z","1.3.0-alpha.ca4facf5":"2018-06-20T18:32:51.638Z","1.3.0-alpha.b04e33fa":"2018-06-20T19:17:17.162Z","1.3.0-alpha.0eb796b2":"2018-06-20T19:21:01.581Z","1.3.0-alpha.c04ef9f7":"2018-06-20T19:24:34.706Z","1.3.0-alpha.0058fd7f":"2018-06-21T18:51:20.224Z","1.3.0-alpha.613ea2eb":"2018-06-21T20:40:52.723Z","1.3.0-alpha.bb7177a5":"2018-06-21T20:56:05.780Z","1.3.0-alpha.8d320877":"2018-06-21T21:14:17.606Z","1.3.0-alpha.02d0d009":"2018-06-22T14:13:01.930Z","1.3.0-alpha.dff13e4b":"2018-06-22T14:15:19.077Z","1.3.0-alpha.7a7e55de":"2018-06-22T14:48:42.189Z","1.3.0-alpha.21d19d43":"2018-06-22T14:52:43.670Z","1.2.18":"2018-06-22T15:04:14.983Z","1.3.0-alpha.9b3b0b90":"2018-06-22T17:33:57.912Z","1.3.0-alpha.2b5ec8e7":"2018-06-23T05:20:28.060Z","1.3.0-alpha.e8e2fb99":"2018-06-26T05:36:01.857Z","1.3.0-alpha.9246a390":"2018-06-26T17:31:59.239Z","1.3.0-alpha.6e5fa181":"2018-06-26T18:04:27.469Z","1.3.0-alpha.11f9c2a1":"2018-06-27T11:56:57.306Z","1.3.0-alpha.1d876ca9":"2018-06-27T16:41:16.117Z","1.3.0-alpha.df1c343b":"2018-06-29T18:35:52.962Z","1.3.0-alpha.74ad35dd":"2018-07-02T13:17:31.349Z","1.3.0-alpha.3c7edc88":"2018-07-02T13:38:42.604Z","1.3.0-alpha.bd6ffcf1":"2018-07-03T13:03:57.041Z","1.3.0-alpha.77ca0056":"2018-07-03T14:22:28.697Z","1.3.0-alpha.39aa4417":"2018-07-03T16:23:11.963Z","1.3.0-alpha.eb30fee0":"2018-07-03T18:05:13.638Z","1.3.0-alpha.079f6b9c":"2018-07-03T20:24:23.741Z","1.2.19":"2018-07-03T20:31:47.717Z","1.3.0-alpha.de23b86a":"2018-07-04T13:15:11.325Z","1.3.0-alpha.5bb97164":"2018-07-04T13:51:19.851Z","1.3.0-alpha.99a95534":"2018-07-04T14:18:30.473Z","1.3.0-alpha.e5322957":"2018-07-04T18:58:02.561Z","1.3.0-alpha.a7600068":"2018-07-05T17:06:35.894Z","1.3.0-alpha.e56998d6":"2018-07-05T19:58:31.702Z","1.3.0-alpha.89d940a2":"2018-07-05T21:26:14.000Z","1.3.0-alpha.51ddcf2b":"2018-07-05T22:00:03.104Z","1.2.20":"2018-07-06T17:40:58.508Z","1.3.0-alpha.a87779f4":"2018-07-09T12:16:59.695Z","1.3.0-alpha.aae05c34":"2018-07-09T12:37:40.455Z","1.3.0-alpha.b17918e5":"2018-07-09T13:19:57.471Z","1.3.0-alpha.f38f1aff":"2018-07-09T16:21:48.222Z","1.3.0-alpha.abcc3683":"2018-07-09T17:04:51.878Z","1.3.0-alpha.81056d4b":"2018-07-09T18:41:15.475Z","1.3.0-alpha.0c6db6ab":"2018-07-09T18:46:54.739Z","1.3.0-alpha.42dad151":"2018-07-09T18:56:06.611Z","1.2.21":"2018-07-09T19:07:04.015Z","1.3.0-alpha.dd4f6898":"2018-07-09T19:17:28.788Z","1.3.0-alpha.96699fca":"2018-07-09T19:40:18.072Z","1.3.0-alpha.77fe25ee":"2018-07-09T19:55:49.376Z","1.3.0-alpha.a113fe90":"2018-07-09T20:14:09.247Z","1.3.0-alpha.72fd5f91":"2018-07-09T22:12:59.560Z","1.3.0-alpha.1a9e55bf":"2018-07-10T17:20:26.611Z","1.3.0-alpha.81f8625d":"2018-07-10T17:48:54.081Z","1.3.0-alpha.2a5219c2":"2018-07-10T18:39:41.967Z","1.3.0-alpha.07e93964":"2018-07-10T19:01:51.149Z","1.3.0":"2018-07-10T19:12:49.589Z","1.4.0-alpha.870fb257":"2018-07-11T14:57:21.628Z","1.4.0-alpha.0c8ff882":"2018-07-11T21:20:51.558Z","1.4.0-alpha.4b14c449":"2018-07-11T21:32:20.321Z","1.4.0-alpha.0b75e71e":"2018-07-12T12:21:52.702Z","1.4.0-alpha.47583025":"2018-07-12T13:04:43.714Z","1.4.0-alpha.f8dae37d":"2018-07-12T13:30:54.849Z","1.4.0-alpha.66f021e1":"2018-07-12T13:41:31.196Z","1.4.0-alpha.96daaacc":"2018-07-12T13:54:29.732Z","1.3.1":"2018-07-12T14:14:40.802Z","1.4.0-alpha.14426014":"2018-07-12T15:06:56.296Z","1.4.0-alpha.a3feb48e":"2018-07-12T15:10:40.340Z","1.4.0":"2018-07-12T15:27:22.865Z","1.5.0-alpha.09982a08":"2018-07-13T19:16:48.559Z","1.5.0-alpha.e2104edc":"2018-07-16T12:53:47.651Z","1.5.0-alpha.fe2d60bf":"2018-07-16T14:38:45.264Z","1.5.0-alpha.d249c1a8":"2018-07-16T14:39:58.704Z","1.5.0-alpha.fe687acf":"2018-07-17T09:33:20.896Z","1.5.0-alpha.f2bf40a9":"2018-07-17T13:19:53.517Z","1.5.0-alpha.2372b0d4":"2018-07-18T13:20:12.003Z","1.4.1":"2018-07-18T13:31:10.835Z","1.5.0-alpha.3541e4fb":"2018-07-18T18:46:06.331Z","1.5.0-alpha.20185dbd":"2018-07-19T14:41:15.820Z","1.5.0-alpha.30efe03d":"2018-07-19T14:41:37.895Z","1.5.0-alpha.792d3ae8":"2018-07-19T14:55:46.016Z","1.4.2":"2018-07-19T16:34:30.693Z","1.5.0-alpha.7cec0a98":"2018-07-19T19:15:39.142Z","1.5.0-alpha.35dc97e0":"2018-07-19T19:39:37.481Z","1.5.0-alpha.ebbbcf26":"2018-07-19T20:04:16.351Z","1.4.3":"2018-07-19T21:15:38.065Z","1.5.0-alpha.9d0d7e53":"2018-07-20T19:34:12.122Z","1.5.0-alpha.516f662e":"2018-07-20T19:37:12.437Z","1.5.0-alpha.56e0f23b":"2018-07-20T19:54:10.543Z","1.4.4":"2018-07-20T20:06:04.701Z","1.5.0-alpha.f4e9d2ac":"2018-07-23T16:48:07.155Z","1.5.0-alpha.3f9920d9":"2018-07-23T16:48:49.378Z","1.5.0-alpha.79069917":"2018-07-23T18:07:27.477Z","1.5.0-alpha.9b6c1b4b":"2018-07-24T17:01:34.999Z","1.5.0-alpha.e1c0bdcf":"2018-07-24T17:49:02.802Z","1.5.0-alpha.3f3ee76e":"2018-07-25T17:11:41.329Z","2.0.0":"2018-07-25T18:02:57.548Z","1.5.0-alpha.d630b7b8":"2018-07-25T18:33:48.493Z","2.1.0-alpha.ed74dcbe":"2018-07-26T14:12:37.916Z","2.1.0-alpha.2004c2dc":"2018-07-27T15:02:47.790Z","2.1.0-alpha.6fd496d9":"2018-07-27T16:46:10.952Z","2.1.0-alpha.486490f7":"2018-07-27T17:29:27.839Z","2.1.0-alpha.45ef571e":"2018-07-27T18:49:07.338Z","2.1.0-alpha.b8a9f699":"2018-07-27T19:32:47.007Z","2.1.0-alpha.dfb1be0a":"2018-07-30T12:27:15.992Z","2.1.0-alpha.eb72d5fa":"2018-07-30T15:18:42.995Z","2.1.0-alpha.f5442866":"2018-07-30T17:35:24.447Z","2.1.0-alpha.cdc02cd0":"2018-07-30T17:42:59.789Z","2.1.0-alpha.5d75fe6e":"2018-07-30T17:53:41.382Z","2.1.0-alpha.d136295c":"2018-07-30T18:02:40.565Z","2.1.0-alpha.de66eae0":"2018-07-30T18:12:59.423Z","2.1.0-alpha.c01d2a01":"2018-07-30T18:16:40.749Z","2.1.0-alpha.df7efd32":"2018-07-30T19:21:56.155Z","2.1.0-alpha.2adb9169":"2018-07-30T20:14:37.690Z","2.1.0-alpha.441ce3da":"2018-07-31T11:05:18.962Z","2.1.0-alpha.fe6f265a":"2018-07-31T12:36:11.100Z","2.1.0-alpha.844b6433":"2018-07-31T14:48:19.043Z","2.1.0-alpha.4c78655c":"2018-07-31T15:01:59.572Z","2.1.0":"2018-07-31T15:29:25.282Z","2.1.0-alpha.a59b42fe":"2018-07-31T17:28:51.945Z","2.1.0-alpha.636662c7":"2018-07-31T18:50:33.957Z","2.2.0-alpha.ac123961":"2018-08-01T14:36:52.453Z","2.1.1":"2018-08-01T14:47:56.485Z","2.2.0-alpha.4943f7ad":"2018-08-01T16:38:52.705Z","2.2.0-alpha.772ba812":"2018-08-01T17:07:55.967Z","2.1.2":"2018-08-01T17:28:40.502Z","2.2.0-alpha.55bb1643":"2018-08-01T20:04:06.804Z","2.2.0-alpha.2e464d84":"2018-08-02T14:43:14.658Z","2.2.0-alpha.3092ab63":"2018-08-02T17:22:00.874Z","2.2.0-alpha.59c7c498":"2018-08-02T18:59:11.933Z","2.2.0-alpha.503f836d":"2018-08-02T19:50:49.328Z","2.2.0-alpha.c8332a96":"2018-08-03T14:57:45.996Z","2.2.0-alpha.9514bd68":"2018-08-06T14:06:22.542Z","2.2.0-alpha.b1889383":"2018-08-06T14:35:36.364Z","2.2.0-alpha.687832ed":"2018-08-06T14:42:42.155Z","2.2.0-alpha.745374bc":"2018-08-06T15:08:08.591Z","2.2.0-alpha.24cc888a":"2018-08-06T15:38:58.718Z","2.2.0-alpha.4c30fc1a":"2018-08-07T13:09:07.738Z","2.2.0-alpha.962986be":"2018-08-07T13:46:28.313Z","2.2.0-alpha.3e9b5800":"2018-08-07T14:18:49.060Z","2.2.0-alpha.c37d23f5":"2018-08-07T18:28:03.449Z","2.1.3":"2018-08-08T11:44:55.227Z","2.2.0-alpha.0fa47d1a":"2018-08-08T17:30:22.945Z","2.2.0-alpha.c1e15ae3":"2018-08-08T17:43:57.303Z","2.1.4":"2018-08-08T17:58:58.729Z","2.2.0-alpha.7dbd9ce9":"2018-08-08T18:03:36.141Z","2.2.0-alpha.e4fd0805":"2018-08-09T19:10:39.062Z","2.2.0-alpha.a2c264b8":"2018-08-09T19:11:42.419Z","2.2.0-alpha.15cd07ff":"2018-08-09T19:35:09.002Z","2.2.0-alpha.b6d6e7a3":"2018-08-09T19:43:55.013Z","2.1.5":"2018-08-09T19:51:40.055Z","2.2.0-alpha.6d678c53":"2018-08-09T20:36:38.700Z","2.2.0-alpha.375ccaf3":"2018-08-10T12:56:50.077Z","2.2.0-alpha.ea8890b8":"2018-08-10T13:51:26.752Z","2.2.0-alpha.43b297de":"2018-08-10T17:40:23.612Z","2.2.0-alpha.d6d6ede1":"2018-08-10T19:56:59.679Z","2.2.0-alpha.6191ce51":"2018-08-11T05:23:23.227Z","2.2.0-alpha.f78c9fb1":"2018-08-11T05:24:57.851Z","2.2.0-alpha.a4bc3eeb":"2018-08-11T11:37:56.609Z","2.2.0-alpha.588b3262":"2018-08-13T13:27:14.966Z","2.2.0-alpha.44455819":"2018-08-13T13:57:20.872Z","2.2.0-alpha.42ef722b":"2018-08-13T14:03:52.963Z","2.2.0-alpha.b5edc8a9":"2018-08-13T17:17:02.921Z","2.2.0-alpha.7842815b":"2018-08-13T17:41:40.692Z","2.2.0-alpha.fa4c9db5":"2018-08-13T18:10:20.590Z","2.2.0-alpha.72fd3088":"2018-08-13T19:17:54.705Z","2.2.0-alpha.bc38dc6e":"2018-08-13T19:53:14.778Z","2.2.0-alpha.f2d16cfb":"2018-08-13T21:21:31.227Z","2.2.0-alpha.3b6a29ec":"2018-08-13T21:55:56.613Z","3.0.0":"2018-08-13T22:07:51.809Z","3.1.0-alpha.5f64fe94":"2018-08-14T11:48:57.328Z","3.1.0-alpha.6dd0a593":"2018-08-14T11:59:28.304Z","3.1.0-alpha.75675ae6":"2018-08-14T14:05:48.762Z","3.1.0-alpha.c9f160dc":"2018-08-14T14:15:50.032Z","3.1.0-alpha.afd12c34":"2018-08-14T15:37:51.662Z","3.0.1":"2018-08-14T17:54:12.725Z","3.1.0-alpha.b913f91e":"2018-08-15T02:13:53.814Z","3.1.0-alpha.b89848e2":"2018-08-15T13:49:56.465Z","3.1.0-alpha.5d972c8b":"2018-08-15T13:53:06.411Z","3.1.0-alpha.6e3e5000":"2018-08-15T14:18:16.374Z","3.1.0-alpha.1cf66a07":"2018-08-15T15:52:14.646Z","3.1.0-alpha.42615b45":"2018-08-16T13:39:05.211Z","3.1.0-alpha.236ddf5f":"2018-08-16T14:30:03.862Z","3.1.0-alpha.252f9b38":"2018-08-16T14:43:11.051Z","3.1.0-alpha.17f7e81c":"2018-08-16T15:53:57.621Z","3.1.0-alpha.dc1e82dd":"2018-08-16T19:31:20.341Z","3.1.0-alpha.0f2a575f":"2018-08-16T19:38:33.587Z","3.1.0-alpha.c5a38e0b":"2018-08-16T19:39:17.987Z","3.1.0-alpha.c7186ac9":"2018-08-16T19:49:00.316Z","3.1.0-alpha.127dd9b7":"2018-08-16T20:31:46.289Z","3.1.0-alpha.2463a497":"2018-08-17T18:03:55.414Z","3.1.0-alpha.d6ee3182":"2018-08-17T18:25:36.823Z","3.1.0-alpha.7a26eb24":"2018-08-17T21:52:48.596Z","3.1.0-alpha.de257c32":"2018-08-17T23:41:09.312Z","3.1.0-alpha.78cf3adb":"2018-08-19T15:17:46.661Z","3.1.0-alpha.f6d76111":"2018-08-20T14:00:32.126Z","3.1.0-alpha.7313f6df":"2018-08-20T20:59:26.237Z","3.1.0-alpha.c7dd8ba3":"2018-08-24T19:25:51.796Z","3.1.0-alpha.961cefdb":"2018-08-24T19:45:06.271Z","3.1.0-alpha.1841f038":"2018-08-25T09:14:14.278Z","3.1.0-alpha.7f8dd094":"2018-08-25T16:29:13.627Z","3.1.0-alpha.fbca7606":"2018-08-25T17:00:31.408Z","3.1.0-alpha.c31e4564":"2018-08-28T18:37:26.122Z","3.1.0-alpha.95bfea5e":"2018-08-28T18:57:08.086Z","3.1.0-alpha.88621341":"2018-08-28T19:16:12.187Z","3.1.0-alpha.26813bdd":"2018-08-29T00:29:15.855Z","3.1.0-alpha.5db3f5c0":"2018-08-29T04:32:10.078Z","3.1.0-alpha.14e363d1":"2018-08-29T04:33:37.830Z","3.1.0-alpha.eac53cf0":"2018-08-29T06:37:20.676Z","3.1.0-alpha.881bd81a":"2018-08-30T09:17:06.679Z","3.1.0-alpha.5a143753":"2018-08-30T11:06:19.591Z","3.1.0-alpha.cabd3e20":"2018-08-30T11:58:16.798Z","3.1.0-alpha.2e583664":"2018-08-31T01:19:23.906Z","3.1.0-alpha.0f1a7669":"2018-09-04T08:06:08.830Z","3.1.0-alpha.8de4581e":"2018-09-04T16:44:49.947Z","3.1.0-alpha.89fea527":"2018-09-05T22:01:06.477Z","3.1.0-alpha.4222e148":"2018-09-05T23:52:53.637Z","3.1.0-alpha.029d6c67":"2018-09-06T14:34:47.089Z","3.1.0-alpha.62b8dd7a":"2018-09-06T14:54:21.663Z","3.1.0-alpha.83e3ee86":"2018-09-06T14:55:15.458Z","3.1.0-alpha.a3bb9044":"2018-09-06T17:57:42.684Z","3.1.0-alpha.e665f260":"2018-09-06T18:11:05.229Z","3.1.0-alpha.137006ec":"2018-09-10T15:54:34.395Z","3.1.0-alpha.16b39aef":"2018-09-10T16:08:43.698Z","3.1.0-alpha.ae5fc0ce":"2018-09-11T01:22:36.661Z","3.1.0-alpha.09d24d88":"2018-09-11T18:15:26.543Z","3.1.0-alpha.2405e027":"2018-09-12T18:09:20.808Z","3.1.0-alpha.3793cc42":"2018-09-12T19:20:56.904Z","3.1.0-alpha.de051be5":"2018-09-12T19:57:37.621Z","3.1.0-alpha.fe90344d":"2018-09-13T11:20:56.398Z","3.0.2-alpha.45":"2018-09-13T11:41:19.115Z","3.1.0-alpha.6aa76345":"2018-09-13T13:27:45.704Z","3.1.0-alpha.d4208acd":"2018-09-14T01:53:20.308Z","3.0.2":"2018-09-14T12:48:40.423Z","3.1.0-alpha.8902dba1":"2018-09-14T16:43:51.615Z","3.1.0-alpha.5d9f5cf3":"2018-09-14T16:54:24.070Z","3.0.3":"2018-09-17T12:47:32.341Z","3.1.0-alpha.e07c6875":"2018-09-17T14:11:36.576Z","3.1.0-alpha.6e0ea6b6":"2018-09-17T14:45:35.887Z","3.1.0-alpha.60aaa968":"2018-09-17T15:35:14.386Z","3.1.0-alpha.211a5123":"2018-09-17T17:22:24.758Z","3.0.4":"2018-09-17T18:14:06.616Z","3.1.0-alpha.8832807e":"2018-09-17T19:25:17.731Z","3.1.0-alpha.e150336e":"2018-09-17T19:36:03.236Z","3.0.5":"2018-09-17T19:58:45.213Z","3.1.0-alpha.227dccfa":"2018-09-17T22:14:14.072Z","3.1.0-alpha.ac0d405e":"2018-09-18T07:43:04.072Z","3.1.0-alpha.64a9a753":"2018-09-18T12:59:23.632Z","3.1.0-alpha.6728014e":"2018-09-18T17:00:14.592Z","3.1.0-alpha.90bddbe3":"2018-09-18T18:36:40.171Z","3.1.0":"2018-09-18T19:10:42.136Z","3.2.0-alpha.bbcc1ee1":"2018-09-18T19:29:31.133Z","3.2.0-alpha.9f432df4":"2018-09-18T20:14:25.733Z","3.2.0-alpha.065456dd":"2018-09-18T20:14:51.927Z","3.1.1":"2018-09-18T20:24:07.452Z","3.2.0-alpha.72d25e2a":"2018-09-18T20:24:41.989Z","3.2.0-alpha.158b4241":"2018-09-18T20:41:24.333Z","3.1.2":"2018-09-18T20:50:48.092Z","3.2.0-alpha.0e3b08f4":"2018-09-19T16:37:15.678Z","3.2.0-alpha.80c1f6e4":"2018-09-19T17:00:56.941Z","3.2.0-alpha.94718854":"2018-09-19T17:13:57.000Z","3.2.0-alpha.622effc8":"2018-09-19T17:18:23.980Z","3.2.0-alpha.c648df42":"2018-09-19T17:18:45.754Z","3.1.3":"2018-09-19T17:28:01.459Z","3.2.0-alpha.e3dd44ac":"2018-09-19T18:51:19.935Z","3.2.0-alpha.46069564":"2018-09-19T19:39:24.073Z","3.2.0-alpha.2df9def6":"2018-09-19T19:41:00.016Z","3.2.0-alpha.ab5b6155":"2018-09-19T20:40:50.886Z","3.2.0-alpha.bec2fd0e":"2018-09-19T22:35:13.294Z","3.1.4":"2018-09-20T13:02:54.233Z","3.2.0-alpha.3cf6efe9":"2018-09-20T13:13:41.281Z","3.2.0-alpha.95638ad0":"2018-09-20T13:15:46.773Z","3.2.0-alpha.24783ca3":"2018-09-20T13:28:20.455Z","3.2.0-alpha.9c01f451":"2018-09-20T13:37:26.677Z","3.2.0-alpha.92e5355c":"2018-09-20T14:22:40.033Z","3.1.6":"2018-09-20T14:34:55.167Z","3.2.0-alpha.bf051f96":"2018-09-20T17:04:21.147Z","3.2.0-alpha.be57b048":"2018-09-20T19:28:17.457Z","3.2.0-alpha.43c065f3":"2018-09-21T07:14:48.684Z","3.2.0-alpha.8f8356ad":"2018-09-21T08:02:10.719Z","3.2.0-alpha.2663735c":"2018-09-21T10:42:50.835Z","3.2.0-alpha.9cf256bc":"2018-09-21T15:10:23.772Z","3.2.0-alpha.ac49b8ee":"2018-09-22T10:29:53.149Z","3.2.0-alpha.e74f7f42":"2018-09-22T17:19:38.240Z","3.2.0-alpha.9b4bf866":"2018-09-24T16:21:23.153Z","3.1.7":"2018-09-24T17:25:00.502Z","3.2.0-alpha.e3d6e0ff":"2018-09-25T12:36:14.952Z","3.2.0-alpha.5e8d38fb":"2018-09-25T13:36:21.759Z","3.2.0-alpha.3676586d":"2018-09-25T13:57:40.318Z","3.2.0-alpha.797c8246":"2018-09-25T18:30:47.416Z","3.1.8":"2018-09-25T18:40:27.388Z","3.2.0-alpha.fc5d3caa":"2018-09-25T21:33:17.602Z","3.2.0-alpha.c5ec2d27":"2018-09-26T15:27:18.886Z","3.1.9":"2018-09-26T19:12:18.637Z","3.2.0-alpha.254e010a":"2018-09-27T13:54:31.561Z","3.2.0-alpha.1bbf0c65":"2018-09-27T14:44:12.324Z","3.2.0-alpha.fd8dfdd0":"2018-09-27T15:59:51.838Z","3.2.0-alpha.6d167141":"2018-09-27T17:42:42.832Z","3.2.0-alpha.6a6c41a6":"2018-09-27T19:56:12.277Z","3.2.0-alpha.7ece2af5":"2018-09-27T20:20:33.142Z","3.1.10":"2018-09-27T20:51:09.078Z","3.2.0-alpha.2fce455b":"2018-09-27T20:58:42.165Z","3.2.0-alpha.c3c09a55":"2018-09-28T12:04:36.383Z","3.2.0-alpha.8d9fd451":"2018-09-28T12:45:46.466Z","3.2.0-alpha.be9091ec":"2018-09-28T14:23:13.470Z","3.1.11":"2018-09-28T16:33:39.180Z","3.2.0-alpha.119a3a05":"2018-09-29T18:59:18.112Z","3.2.0-alpha.67b7f6f5":"2018-09-30T20:35:00.381Z","3.2.0-alpha.e97ece4e":"2018-10-01T14:51:30.355Z","3.2.0-alpha.7a7b512a":"2018-10-01T15:38:52.818Z","3.2.0-alpha.f222d9e6":"2018-10-02T15:50:29.941Z","3.2.0-alpha.2090b6ba":"2018-10-02T18:34:09.947Z","3.2.0-alpha.ad3732d7":"2018-10-03T09:02:57.476Z","3.2.0-alpha.93382e1f":"2018-10-03T12:18:07.523Z","3.2.0-alpha.99863187":"2018-10-03T13:28:40.642Z","3.2.0":"2018-10-03T13:47:06.550Z","3.3.0-alpha.f9ab7f2d":"2018-10-03T17:12:47.012Z","3.3.0-alpha.cf04abcb":"2018-10-04T06:10:14.995Z","3.3.0-alpha.babdc071":"2018-10-04T06:58:18.606Z","3.3.0-alpha.0ca4fd12":"2018-10-04T18:49:23.365Z","3.3.0-alpha.b3932f55":"2018-10-05T02:51:22.596Z","3.3.0-alpha.6e8d8c2f":"2018-10-05T06:48:57.543Z","3.3.0-alpha.7c0bf40a":"2018-10-05T14:39:11.564Z","3.3.0-alpha.94c320bb":"2018-10-05T15:00:00.385Z","3.3.0-alpha.cf41d36c":"2018-10-05T17:08:08.360Z","3.3.0-alpha.ac480af5":"2018-10-07T10:52:32.383Z","3.3.0-alpha.a2e99832":"2018-10-07T15:31:56.779Z","3.3.0-alpha.285d1383":"2018-10-08T14:55:51.574Z","3.3.0-alpha.dfeb3df4":"2018-10-08T15:30:42.821Z","3.3.0-alpha.248dc626":"2018-10-08T16:49:41.374Z","3.3.0-alpha.feb957a5":"2018-10-08T16:57:17.817Z","3.3.0-alpha.2efdf146":"2018-10-08T17:02:36.430Z","3.3.0-alpha.db1b6d06":"2018-10-08T17:07:06.283Z","3.3.0-alpha.40875abc":"2018-10-08T17:10:30.969Z","3.3.0-alpha.1e981bb7":"2018-10-08T17:17:40.286Z","3.3.0-alpha.8cd345a2":"2018-10-08T17:36:49.709Z","3.3.0-alpha.1142b206":"2018-10-08T17:40:25.211Z","3.3.0-alpha.62697e02":"2018-10-08T17:47:08.706Z","3.3.0-alpha.a0d35708":"2018-10-09T17:56:31.286Z","3.3.0-alpha.76a2b9de":"2018-10-09T21:13:54.129Z","3.3.0-alpha.d54af94d":"2018-10-10T19:10:54.981Z","3.3.0-alpha.4d72ad40":"2018-10-11T10:10:15.458Z","3.3.0-alpha.701dce11":"2018-10-11T14:58:37.350Z","3.3.0-alpha.cc2cda3f":"2018-10-11T15:52:58.593Z","3.3.0-alpha.2049ff74":"2018-10-11T16:23:50.764Z","3.3.0-alpha.b7ce398a":"2018-10-11T18:12:56.709Z","3.3.0-alpha.2c14db15":"2018-10-11T18:25:37.745Z","3.3.0-alpha.a7fe141c":"2018-10-12T05:55:39.797Z","3.3.0-alpha.0a17622b":"2018-10-14T11:07:08.019Z","3.3.0-alpha.3637f56f":"2018-10-14T18:20:23.095Z","3.3.0-alpha.4f6e5666":"2018-10-15T13:14:58.288Z","3.3.0-alpha.bc0bf3f6":"2018-10-15T13:46:05.219Z","3.3.0-alpha.629ac030":"2018-10-15T18:07:07.529Z","3.3.0-alpha.92c2d991":"2018-10-16T08:09:38.293Z","3.3.0-alpha.ee69673e":"2018-10-16T09:28:10.438Z","3.3.0-alpha.97f5a8ec":"2018-10-16T13:39:17.817Z","3.3.0-alpha.ed75aa2b":"2018-10-16T14:57:37.434Z","3.3.0-alpha.947af9de":"2018-10-16T17:45:38.162Z","3.3.0-alpha.9477c937":"2018-10-16T19:25:36.129Z","3.3.0-alpha.f419a6b4":"2018-10-16T20:04:42.755Z","3.3.0-alpha.0f4df0a5":"2018-10-16T20:29:40.605Z","3.3.0-alpha.b812d0a7":"2018-10-17T12:10:18.275Z","3.2.1":"2018-10-17T12:29:53.845Z","3.3.0-alpha.640632ef":"2018-10-17T13:17:38.462Z","3.3.0-alpha.bc4d036e":"2018-10-17T13:18:06.201Z","3.3.0-alpha.dbf7a74c":"2018-10-17T14:00:26.123Z","3.3.0-alpha.57e147b8":"2018-10-17T14:39:45.635Z","3.3.0-alpha.0cdfb5a7":"2018-10-17T16:37:39.830Z","3.3.0-alpha.72feb5f0":"2018-10-17T18:12:14.405Z","3.3.0-alpha.711f421a":"2018-10-17T18:24:29.746Z","3.3.0-alpha.034ee1e1":"2018-10-18T16:42:09.286Z","3.3.0-alpha.ac6e0707":"2018-10-18T23:21:50.599Z","3.3.0-alpha.4bdb7036":"2018-10-19T10:57:05.548Z","3.3.0-alpha.e2555a09":"2018-10-19T13:21:39.868Z","3.2.2":"2018-10-19T13:35:15.126Z","3.3.0-alpha.c2f8c5bb":"2018-10-19T13:38:48.083Z","3.3.0-alpha.bb47cd4b":"2018-10-19T13:54:14.618Z","3.3.0-alpha.c609372e":"2018-10-19T16:57:33.525Z","3.3.0-alpha.25fbfdbe":"2018-10-19T22:23:41.702Z","3.3.0-alpha.4685fddc":"2018-10-20T05:17:04.044Z","3.3.0-alpha.328cb768":"2018-10-21T13:12:17.728Z","3.3.0-alpha.1fc84f82":"2018-10-22T20:27:47.662Z","3.3.0-alpha.54e7fc6f":"2018-10-22T23:32:38.414Z","3.3.0-alpha.fbdc2ca3":"2018-10-23T10:16:50.752Z","3.3.0-alpha.08f4e1e1":"2018-10-23T12:53:21.475Z","3.2.3":"2018-10-23T13:13:18.481Z","3.3.0-alpha.9297da9f":"2018-10-23T13:32:33.370Z","3.3.0-alpha.c0ecea5d":"2018-10-23T13:43:03.405Z","3.2.4":"2018-10-23T13:55:38.870Z","3.3.0-alpha.75fb7265":"2018-10-24T00:36:59.629Z","3.3.0-alpha.413ab974":"2018-10-24T13:35:52.917Z","3.3.0-alpha.bb03e5a8":"2018-10-24T15:48:42.419Z","3.3.0-alpha.1ccb021e":"2018-10-24T16:23:06.490Z","3.3.0-alpha.9678cb5d":"2018-10-24T19:05:22.008Z","3.3.0-alpha.7036f1a7":"2018-10-24T19:09:55.442Z","3.3.0-alpha.8be62263":"2018-10-25T19:03:38.868Z","3.3.0-alpha.9f9ad290":"2018-10-25T19:11:50.179Z","3.3.0-alpha.b060fd51":"2018-10-25T20:36:56.339Z","3.3.0-alpha.e9d1e49a":"2018-10-26T13:46:38.075Z","3.3.0-alpha.70ff7bd3":"2018-10-26T14:18:34.671Z","3.2.5":"2018-10-26T16:38:44.125Z","3.3.0-alpha.ac36fe7c":"2018-10-26T17:05:03.041Z","3.3.0-alpha.64b91c22":"2018-10-26T17:32:40.499Z","3.2.6":"2018-10-26T18:36:05.192Z","3.3.0-alpha.884cbfbf":"2018-10-26T18:58:25.516Z","3.3.0-alpha.0af71f65":"2018-10-26T20:22:29.973Z","3.3.0-alpha.85335020":"2018-10-26T21:01:24.651Z","3.3.0-alpha.c4ed1a5a":"2018-10-27T22:50:13.003Z","3.3.0-alpha.f94d6eeb":"2018-10-29T12:43:25.086Z","3.3.0":"2018-10-29T13:00:22.900Z","3.4.0-alpha.ca72ed4a":"2018-10-29T13:09:04.277Z","3.4.0-alpha.cb49a83a":"2018-10-29T17:20:28.935Z","3.4.0-alpha.cbfce4cd":"2018-10-29T19:54:38.551Z","3.4.0-alpha.52cafd22":"2018-10-30T12:15:12.517Z","3.4.0-alpha.9053ee92":"2018-10-30T12:59:28.112Z","3.3.1":"2018-10-30T13:38:26.978Z","3.4.0-alpha.6a288aed":"2018-10-30T15:15:11.348Z","3.4.0-alpha.68975eb4":"2018-10-30T15:41:09.668Z","3.4.0-alpha.fb5f3b79":"2018-10-30T15:57:04.164Z","3.4.0-alpha.38e29579":"2018-10-30T17:15:01.376Z","3.3.2":"2018-10-30T17:25:56.290Z","3.4.0-alpha.412c9747":"2018-10-31T17:31:53.976Z","3.4.0-alpha.eef645a0":"2018-11-01T09:16:20.147Z","3.4.0-alpha.3292553c":"2018-11-01T16:23:36.822Z","3.4.0-alpha.5d5d840f":"2018-11-03T14:55:38.237Z","3.4.0-alpha.63619ba1":"2018-11-03T21:42:47.210Z","3.4.0-alpha.47d16c13":"2018-11-04T09:12:19.619Z","3.4.0-alpha.64dde1e2":"2018-11-04T10:00:29.473Z","3.4.0-alpha.c667a834":"2018-11-05T10:20:31.101Z","3.4.0-alpha.ccc56190":"2018-11-05T10:33:07.457Z","3.4.0-alpha.cb539665":"2018-11-05T13:27:27.377Z","3.4.0-alpha.ff6847aa":"2018-11-06T17:26:21.585Z","3.4.0-alpha.c0aa2f9a":"2018-11-06T18:07:25.610Z","3.4.0-alpha.875ee196":"2018-11-07T01:34:33.307Z","3.4.0-alpha.e97f538c":"2018-11-07T02:33:57.813Z","3.4.0-alpha.21e26729":"2018-11-07T03:07:22.950Z","3.4.0-alpha.21d9064f":"2018-11-07T04:25:33.681Z","3.4.0-alpha.a3be0ff6":"2018-11-07T06:43:50.749Z","3.4.0-alpha.a407fc3d":"2018-11-07T10:45:46.366Z","3.4.0-alpha.b9bb0fbf":"2018-11-07T12:15:44.850Z","3.4.0-alpha.0c3e89c7":"2018-11-07T15:34:23.380Z","3.4.0-alpha.9350a75e":"2018-11-07T15:36:22.869Z","3.3.0-alpha.3825471f":"2018-11-07T15:57:19.634Z","3.4.0-alpha.5af55816":"2018-11-07T16:05:11.047Z","3.4.0-alpha.8de25fab":"2018-11-07T16:08:35.313Z","3.4.0-alpha.e6e80ba7":"2018-11-07T16:31:28.595Z","3.4.0-alpha.07e9f012":"2018-11-07T17:46:55.300Z","3.4.0-alpha.1b289e6a":"2018-11-08T07:28:16.788Z","3.4.0":"2018-11-08T12:53:19.269Z","3.5.0-alpha.3dfab596":"2018-11-08T13:28:42.631Z","3.5.0-alpha.885812b6":"2018-11-08T15:16:20.487Z","3.5.0-alpha.d2eda2b5":"2018-11-08T18:53:20.174Z","3.4.1":"2018-11-08T19:03:47.389Z","3.5.0-alpha.eddde304":"2018-11-08T19:13:35.734Z","3.5.0-alpha.9bff8ddb":"2018-11-09T14:42:26.512Z","3.5.0-alpha.0251c33c":"2018-11-10T01:08:38.288Z","3.5.0-alpha.e1d3d9bd":"2018-11-10T11:49:50.529Z","3.5.0-alpha.43e2e3a4":"2018-11-10T17:38:15.493Z","3.5.0-alpha.6ae5d07a":"2018-11-10T22:17:11.573Z","3.5.0-alpha.e7c81443":"2018-11-11T08:59:11.788Z","3.5.0-alpha.3bc2b88c":"2018-11-11T11:25:26.854Z","3.5.0-alpha.aa3b4b88":"2018-11-12T17:43:20.826Z","3.5.0-alpha.83b4399c":"2018-11-12T23:40:22.588Z","3.5.0-alpha.fadcd199":"2018-11-13T05:27:32.706Z","3.5.0-alpha.6bf4f5bb":"2018-11-16T19:41:49.245Z","3.5.0-alpha.375d8a6c":"2018-11-18T06:17:39.096Z","3.5.0-alpha.e54fc096":"2018-11-19T17:30:16.954Z","3.5.0-alpha.f6da0219":"2018-11-20T09:11:33.335Z","3.4.2":"2018-11-21T11:23:09.031Z","3.5.0-alpha.6d6d14f7":"2018-11-21T11:30:48.008Z","3.5.0-alpha.6b2101dd":"2018-11-21T19:03:48.753Z","3.5.0-alpha.74cf6c51":"2018-11-22T18:42:30.423Z","3.5.0-alpha.c6940d9e":"2018-11-25T19:54:22.738Z","3.5.0-alpha.74f71aaa":"2018-11-27T13:53:20.524Z","3.5.0-alpha.b2965f0b":"2018-11-27T14:45:13.267Z","3.5.0-alpha.cdd34101":"2018-11-27T19:47:21.432Z","3.5.0-alpha.2f7f3058":"2018-11-28T12:04:05.150Z","3.5.0-alpha.8657e05c":"2018-11-28T16:24:44.767Z","3.5.0-alpha.dd5f7476":"2018-11-28T21:51:46.689Z","3.5.0-alpha.e5a3180f":"2018-11-28T22:04:34.916Z","3.5.0-alpha.d4c07955":"2018-11-29T12:54:07.283Z","3.5.0-alpha.e03c646f":"2018-11-29T14:13:06.090Z","3.4.3":"2018-11-29T15:52:53.965Z","3.5.0-alpha.a11b54b6":"2018-11-30T02:54:28.265Z","3.5.0-alpha.e7623c67":"2018-11-30T14:42:00.659Z","3.5.0-alpha.ee3ceaab":"2018-12-03T08:04:36.128Z","3.5.0-alpha.e87ed319":"2018-12-04T04:23:06.747Z","3.5.0-alpha.f6b6d992":"2018-12-04T10:33:15.408Z","3.5.0-alpha.5a5c4b6b":"2018-12-04T13:10:07.388Z","3.5.0-alpha.a6658924":"2018-12-04T14:19:31.603Z","3.5.0-alpha.f82fd6b4":"2018-12-05T13:51:13.990Z","3.5.0-alpha.a45fca8d":"2018-12-07T04:53:31.515Z","3.5.0-alpha.21ea3e28":"2018-12-07T04:53:43.009Z","3.5.0-alpha.95d46834":"2018-12-07T11:35:19.391Z","3.5.0-alpha.d8019062":"2018-12-10T12:02:26.561Z","3.5.0-alpha.cf417eeb":"2018-12-10T15:55:13.195Z","3.5.0-alpha.1c3402b5":"2018-12-10T19:41:22.563Z","3.4.4":"2018-12-12T14:06:21.373Z","3.5.0-alpha.6a8363d5":"2018-12-12T15:17:24.297Z","3.4.5":"2018-12-12T16:56:09.105Z","3.5.0-alpha.b2379f6d":"2018-12-13T14:02:28.731Z","3.4.6":"2018-12-14T14:09:48.527Z","3.5.0-alpha.ebe764b9":"2018-12-14T16:21:00.658Z","3.5.0-alpha.d9cb31b4":"2018-12-17T10:40:08.494Z","3.4.7":"2018-12-17T18:54:57.627Z","3.5.0-alpha.09169fcc":"2018-12-18T00:25:05.281Z","3.5.0-alpha.a3d90946":"2018-12-18T12:28:04.863Z","3.5.0-alpha.2496656c":"2018-12-18T18:08:31.260Z","3.5.0-alpha.8a98f83c":"2018-12-19T16:29:22.682Z","3.5.0-alpha.7325588e":"2018-12-20T03:34:12.991Z","3.5.0-alpha.4a16a3c2":"2018-12-20T15:45:56.783Z","3.5.0-alpha.b4f9d325":"2018-12-26T12:00:40.812Z","3.5.0-alpha.7c5cc223":"2018-12-26T13:26:25.043Z","3.5.0-alpha.198f2331":"2018-12-27T13:09:09.105Z","3.5.0-alpha.20dc0302":"2018-12-27T14:13:18.968Z","3.5.0-alpha.5ec96798":"2018-12-28T08:14:19.859Z","3.5.0-alpha.3152cff1":"2019-01-01T10:59:01.979Z","3.5.0-alpha.140e89fc":"2019-01-02T15:10:03.786Z","3.5.0-alpha.58cc129e":"2019-01-02T19:33:26.169Z","3.5.0-alpha.b06c364f":"2019-01-03T12:00:50.830Z","3.4.8":"2019-01-03T12:17:58.589Z","3.5.0-alpha.52295049":"2019-01-03T12:28:51.074Z","3.5.0-alpha.ce9dd01e":"2019-01-03T17:45:26.075Z","3.5.0-alpha.9eea1bd7":"2019-01-04T14:44:40.109Z","3.4.9-alpha.9":"2019-01-07T16:25:08.541Z","3.5.0-alpha.b56b7743":"2019-01-07T18:00:28.581Z","3.5.0-alpha.a89d5ae7":"2019-01-07T18:17:37.909Z","3.5.0-alpha.d20ca3cc":"2019-01-08T13:03:43.139Z","3.5.0-alpha.d17918c6":"2019-01-08T16:38:43.282Z","3.5.0-alpha.9772d56f":"2019-01-09T07:33:09.233Z","3.5.0-alpha.46063efc":"2019-01-09T07:50:38.865Z","3.5.0-alpha.e40864c2":"2019-01-09T08:29:46.787Z","3.4.9-alpha.3":"2019-01-11T13:03:03.105Z","3.5.0":"2019-01-14T18:46:20.104Z","3.5.1-alpha.12":"2019-02-12T11:53:20.849Z","3.5.1-alpha.13":"2019-02-12T14:35:59.142Z","3.5.1":"2019-02-13T11:34:47.681Z","3.5.2-alpha.1":"2019-02-15T20:04:23.564Z","3.6.0":"2019-02-18T17:21:59.121Z","3.6.1-alpha.10":"2019-02-27T13:53:05.557Z","3.6.1-alpha.53":"2019-03-06T14:21:21.262Z","3.6.1":"2019-03-07T13:46:31.814Z","3.6.2-alpha.26":"2019-03-08T16:15:22.598Z","3.6.2":"2019-03-08T17:38:07.965Z","3.6.3-setup-percy.8":"2019-03-13T18:05:30.867Z","3.6.3-4208.1.8":"2019-03-13T19:25:18.755Z","3.6.3-4209.1.8":"2019-03-13T19:25:43.314Z","3.6.3-4212.1.8":"2019-03-13T19:39:52.053Z","3.6.3-4211.1.8":"2019-03-13T19:40:13.664Z","3.6.3-alpha.9":"2019-03-15T12:32:31.771Z","3.6.3-alpha-percy-andre.13":"2019-03-18T21:10:11.980Z","3.6.3-alpha-percy-andre.14":"2019-03-19T12:21:45.007Z","3.6.3-alpha-multi-select.19":"2019-03-19T19:21:28.790Z","3.6.3-alpha-multi-select.25":"2019-03-21T17:23:40.361Z","3.6.3":"2019-03-21T17:37:09.270Z","3.6.4-alpha-storybook-images.12":"2019-04-01T18:25:47.347Z","3.6.4":"2019-04-03T13:52:14.096Z","3.6.5-alpha-form-wrapper-ids.7":"2019-04-08T19:57:55.235Z","3.6.5-alpha-invalid-prop.7":"2019-04-08T19:59:35.885Z","3.6.5-alpha-invalid-prop.9":"2019-04-09T13:39:29.629Z","3.6.5-alpha-invalid-prop.8":"2019-04-10T12:35:32.771Z","3.6.5":"2019-04-10T13:03:44.546Z","3.6.6-alpha-extendable.28":"2019-04-17T19:52:16.352Z","3.6.6-alpha-extendable.33":"2019-04-23T12:52:04.926Z","3.6.6-alpha-input-focus.2":"2019-04-23T14:16:58.624Z","3.6.6":"2019-04-24T12:20:47.941Z","3.6.7-alpha-extendable.28":"2019-04-25T12:57:13.372Z","3.6.7":"2019-04-25T13:17:24.958Z","3.6.8-alpha-modal-4596.1.25":"2019-05-28T20:06:57.916Z","3.6.8":"2019-05-31T13:46:07.721Z","3.6.9-alpha-modal-tweaks-4662.1.6":"2019-06-07T17:41:23.578Z","3.6.9":"2019-06-11T19:46:34.216Z","3.6.10-alpha-text-truncate-4709.1.4":"2019-06-19T13:34:19.391Z","3.6.10-alpha-text-truncate-4713.1.6":"2019-06-19T17:13:55.878Z","3.6.10-alpha-text-truncate-4715.1.6":"2019-06-19T17:31:41.292Z","3.6.10-alpha-text-truncate-4717.1.7":"2019-06-19T18:56:04.482Z","3.6.10":"2019-06-25T14:22:40.720Z","3.6.11-alpha-upd-deps-4809.1.19":"2019-07-05T18:09:27.116Z","3.6.11-alpha-upd-deps-4827.1.21":"2019-07-09T16:46:35.186Z","3.6.11":"2019-07-09T19:26:03.129Z","3.6.12-alpha-tooltip-position-4885.1.21":"2019-07-15T14:31:02.036Z","3.6.12-alpha-tooltip-position-4886.1.19":"2019-07-15T14:32:33.701Z","3.6.12-alpha-tooltip-position-4915.1.30":"2019-07-16T18:39:16.858Z","3.6.12-alpha-tooltip-position-4957.1.32":"2019-07-18T19:18:43.215Z","3.6.12":"2019-07-18T19:32:03.451Z","3.6.13-alpha-fix-empty-state-buttons-4980.1.4":"2019-07-19T18:17:42.259Z","3.6.13-alpha-fix-empty-state-buttons-4986.1.5":"2019-07-19T18:36:27.242Z","3.6.13":"2019-07-19T19:35:49.850Z","3.6.14-alpha-fix-protected-input-5017.1.3":"2019-07-24T16:03:58.815Z","3.6.14":"2019-07-24T16:48:05.397Z","3.6.15-alpha-tooltip-auto-positioned-5024.1.2":"2019-07-30T13:55:35.476Z","3.6.15-alpha-tooltip-auto-positioned-5028.1.2":"2019-08-01T17:30:15.625Z","3.6.15":"2019-08-05T14:28:14.628Z","3.6.16-alpha-tooltip-z-fix-5043.1.2":"2019-08-07T21:12:12.744Z","3.6.16":"2019-08-09T12:48:40.949Z","3.6.17-alpha-disable-amount-selectors-5122.1.15":"2019-09-04T16:41:35.115Z","3.6.17":"2019-09-05T14:50:57.759Z","3.6.18-alpha-update-deps-5135.1.1":"2019-09-09T16:42:46.879Z","3.6.18-alpha-update-deps-5137.1.1":"2019-09-09T16:56:26.124Z","3.6.18":"2019-09-10T19:29:17.423Z","3.6.18-alpha-image-use-img-5159.1.7":"2019-09-11T21:11:10.855Z","3.6.19-alpha-image-use-img-5161.1.4":"2019-09-11T21:16:10.528Z","3.6.19-alpha-search-field-before-change-5167.1.8":"2019-09-12T18:27:33.813Z","3.6.19-alpha-image-use-img-5173.1.4":"2019-09-12T21:14:44.980Z","3.6.19-alpha-image-use-img-5177.1.5":"2019-09-13T13:03:05.299Z","3.6.19-alpha-fix-tooltip-auto-position-5179.1.1":"2019-09-13T18:25:05.364Z","3.6.19-alpha-image-use-img-5185.1.8":"2019-09-13T19:47:01.582Z","3.6.19-alpha-image-use-img-5193.1.17":"2019-09-16T14:31:31.994Z","3.6.19-alpha-search-field-before-change-5195.1.9":"2019-09-16T16:21:19.101Z","3.6.19-alpha-fix-tooltip-auto-position-5197.1.3":"2019-09-16T16:27:07.698Z","3.6.19-alpha-image-use-img-5211.1.20":"2019-09-16T18:56:22.872Z","3.6.19-alpha-image-use-img-5213.1.7":"2019-09-16T19:43:31.229Z","3.6.19":"2019-09-16T20:16:27.929Z","3.6.20-alpha-search-field-before-change-5218.1.10":"2019-09-17T18:41:46.938Z","3.6.20":"2019-09-17T19:07:13.273Z","3.6.19-alpha-fix-tooltip-auto-position-5221.1.7":"2019-09-18T17:01:16.887Z","3.6.21":"2019-09-18T20:28:41.086Z","3.6.22-alpha-fix-image-overflow-5243.1.8":"2019-10-01T18:17:55.555Z","3.6.22":"2019-10-01T18:35:40.691Z","3.6.23-alpha-input-phone-5286.1.19":"2019-10-08T16:15:01.527Z","3.6.23-alpha-fix-image-proptype-5327.1.12":"2019-10-14T13:59:41.601Z","3.6.23-alpha-input-phone-5347.1.32":"2019-10-15T19:52:16.153Z","3.6.23-alpha-input-phone-5351.1.35":"2019-10-16T11:44:31.675Z","3.6.23-alpha-fix-image-proptype-5356.1.12":"2019-10-16T12:39:12.228Z","3.6.23-alpha-input-phone-5384.1.46":"2019-10-18T18:02:01.699Z","3.6.23-alpha-fix-image-proptype-5388.1.14":"2019-10-18T18:04:54.306Z","3.6.23":"2019-10-18T19:50:59.119Z","3.6.24-alpha-input-phone-5418.1.33":"2019-10-23T16:30:20.267Z","3.6.24":"2019-10-23T16:45:43.311Z","3.6.25-alpha-side-nav-js-5441.1.47":"2019-10-28T18:07:18.701Z","3.6.25":"2019-10-31T20:50:44.887Z","3.6.26-alpha-mobile-tooltip-5522.1.5":"2019-11-12T15:24:34.290Z","3.6.26-alpha-use-new-icons-5530.1.24":"2019-11-12T18:01:36.741Z","3.7.0":"2019-11-13T17:34:24.792Z","3.7.1-alpha-mobile-tooltip-5545.1.5":"2019-11-13T19:10:24.846Z","3.7.1-alpha-mobile-tooltip-5547.1.6":"2019-11-13T19:35:57.484Z","3.7.1-alpha-mobile-tooltip-5551.1.8":"2019-11-14T12:55:33.440Z","3.7.1-alpha-use-new-icons-5553.1.26":"2019-11-14T16:02:23.457Z","3.7.1-alpha-mobile-tooltip-5557.1.10":"2019-11-14T18:18:22.177Z","3.7.1-alpha-mobile-tooltip-5561.1.12":"2019-11-18T13:46:28.811Z","3.7.1-alpha-use-new-icons-5568.1.29":"2019-11-18T21:02:52.361Z","3.7.1-alpha-use-new-icons-5574.1.34":"2019-11-19T17:31:10.245Z","3.7.1-alpha-use-new-icons-5576.1.28":"2019-11-19T17:48:24.835Z","3.8.0":"2019-11-19T18:02:52.947Z","3.8.1-alpha-mobile-tooltip-5579.1.12":"2019-11-19T20:15:49.083Z","3.8.1-alpha-responsive-modal-5591.1.7":"2019-11-22T19:32:15.815Z","3.8.1-alpha-mobile-tooltip-5599.1.14":"2019-11-26T16:38:12.303Z","3.8.1-alpha-mobile-tooltip-5602.1.9":"2019-11-26T16:42:09.390Z","3.8.1-alpha-responsive-modal-5603.1.10":"2019-11-26T18:47:19.707Z","3.8.1-alpha-mobile-tooltip-5605.1.10":"2019-11-26T19:00:43.050Z","3.8.1":"2019-11-26T19:12:41.022Z","3.8.2-alpha-upd-depss-5608.1.6":"2019-11-27T15:25:30.089Z","3.8.2-alpha-upd-depss-5616.1.19":"2019-11-27T18:25:14.304Z","3.8.2":"2019-11-27T19:18:35.296Z","3.8.3":"2019-11-27T20:29:42.822Z","3.8.4-alpha-fix-proptype-warning-5631.1.1":"2019-11-28T19:51:00.496Z","3.8.4":"2019-11-28T20:07:40.585Z","3.8.5-alpha-tangerine-5635.1.1":"2019-12-03T18:56:18.157Z","3.8.5":"2019-12-03T19:18:51.288Z","3.8.6":"2019-12-18T16:56:45.444Z","3.8.7-alpha-image-with-box-shadow-5646.1.2":"2019-12-27T18:33:24.306Z","3.8.7":"2019-12-27T18:48:57.403Z","3.8.8-alpha-link-fontweight-5650.1.2":"2020-01-03T17:55:33.525Z","3.8.8":"2020-01-03T18:36:49.982Z","3.8.9-alpha-new-primary-button-colors-5656.1.2":"2020-01-08T17:12:08.914Z","3.8.9":"2020-01-08T17:33:54.203Z","3.8.10-alpha-input-border-radius-5660.1.2":"2020-01-15T19:14:15.485Z","3.8.10":"2020-01-15T19:34:17.529Z","3.8.11-alpha-responsive-text-5665.1.3":"2020-01-28T14:42:30.331Z","3.8.11":"2020-01-28T19:04:54.313Z","3.8.12-alpha-card-border-5671.1.2":"2020-02-03T20:05:54.858Z","3.8.12-alpha-card-border-5673.1.3":"2020-02-04T14:16:07.259Z","3.8.12":"2020-02-04T17:22:58.123Z","3.8.13-alpha-textarea-focus-5684.1.2":"2020-02-27T20:52:57.855Z","3.8.13":"2020-02-28T11:41:56.802Z","3.8.14-alpha-upd-dep-280220-5690.1.25":"2020-03-05T19:57:33.270Z","3.8.14":"2020-03-06T15:39:22.234Z","3.8.15":"2020-05-13T18:21:24.657Z","3.8.16":"2020-05-14T14:32:21.859Z","3.8.17-alpha-new-label-5742.1.5":"2020-06-19T19:34:40.704Z","3.8.17-alpha-redesign-form-fields-5751.1.9":"2020-06-23T14:11:42.705Z","3.8.17-alpha-redesign-form-fields-5753.1.9":"2020-06-23T14:52:06.833Z","3.8.17-alpha-new-label-5761.1.7":"2020-06-24T17:56:49.450Z","3.8.17-alpha-new-label-5765.1.5":"2020-06-25T12:37:32.921Z","3.8.17":"2020-06-25T15:53:01.425Z","3.8.17-alpha-redesign-form-fields-5772.1.8":"2020-06-25T16:27:30.247Z","3.8.18-alpha-redesign-form-fields-5774.1.4":"2020-06-25T16:31:50.509Z","3.8.18-alpha-redesign-form-fields-5775.1.6":"2020-06-25T16:39:35.332Z","3.8.18-alpha-redesign-form-fields-5777.1.6":"2020-06-25T16:50:51.124Z","3.8.18-alpha-redesign-form-fields-5789.1.7":"2020-06-30T14:03:17.033Z","3.9.0":"2020-06-30T14:11:07.793Z","3.9.1-alpha-dropdown-button-props-5805.1.3":"2020-07-07T15:24:51.237Z","3.9.1":"2020-07-08T11:41:25.230Z","3.9.2-alpha-fix-icons-react-import-5808.1.2":"2020-07-09T14:55:28.590Z","3.9.2-alpha-fix-icons-react-import-5810.1.3":"2020-07-09T16:10:56.946Z","3.9.2-alpha-fix-icons-react-import-5812.1.4":"2020-07-09T16:22:24.276Z","3.9.2-alpha-fix-icons-react-import-5814.1.2":"2020-07-09T17:14:03.797Z","3.9.2-alpha-fix-icons-react-import-5816.1.3":"2020-07-09T17:24:31.911Z","3.9.2-alpha-fix-github-dribbble-icons-5818.1.1":"2020-07-09T17:47:10.825Z","3.9.2-alpha-another-icon-test-5829.1.4":"2020-07-13T15:06:40.997Z","3.9.2-alpha-another-icon-test-5832.1.6":"2020-07-13T15:33:11.203Z","4.0.0":"2020-07-14T16:24:31.842Z","4.0.1-alpha-redesign-hoc-input-5854.1.33":"2020-07-15T14:38:55.198Z","4.0.1-alpha-redesign-hoc-input-5856.1.33":"2020-07-15T17:14:17.246Z","5.0.0":"2020-07-15T19:27:08.271Z","5.0.1-alpha-protected-currency-5867.1.7":"2020-08-04T18:57:25.837Z","5.1.0":"2020-08-05T12:47:02.707Z","5.1.1-alpha-button-redesign-5884.1.15":"2020-09-02T19:51:58.608Z","5.1.1-alpha-button-redesign-5888.1.18":"2020-09-03T19:39:25.982Z","5.1.1-alpha-button-redesign-5890.1.18":"2020-09-03T19:48:40.546Z","5.1.1-alpha-button-redesign-5892.1.14":"2020-09-04T16:35:46.722Z","5.1.1":"2020-09-04T16:54:20.023Z","5.1.2-alpha-fix-button-white-space-5896.1.2":"2020-09-09T14:28:41.271Z","5.1.2-alpha-fix-button-white-space-5898.1.2":"2020-09-09T19:10:15.431Z","5.1.2":"2020-09-09T19:33:28.034Z","5.1.3-alpha-button-line-height-5901.1.2":"2020-09-10T12:20:00.352Z","5.1.3":"2020-09-10T12:52:18.226Z","5.1.4-alpha-esmodules-5917.1.9":"2020-10-14T14:46:07.316Z","5.1.4-alpha-esmodules-5921.1.10":"2020-10-15T13:30:32.714Z","5.1.4-alpha-esmodules-5925.1.9":"2020-10-21T18:28:24.674Z","5.1.4":"2020-10-21T19:28:51.725Z","5.1.5-alpha-icon-publish-5935.1.5":"2020-10-29T11:59:27.868Z","5.1.5":"2020-10-29T14:19:56.594Z","5.1.6-alpha-table-redesign-manual-1.8":"2021-01-21T12:14:46.352Z","5.1.6-alpha-update-deps-032021-6011.1.42":"2021-03-31T14:29:09.812Z","5.1.6-alpha-update-deps-032021-6016.1.46":"2021-03-31T16:53:44.105Z","5.1.6-alpha-update-deps-032021-6038.1.59":"2021-04-09T19:19:19.501Z","5.1.6":"2021-04-19T14:43:35.842Z","5.1.7-alpha-update-icons-6066.1.4":"2021-04-27T15:08:19.267Z","5.1.7-alpha-update-icons-6070.1.4":"2021-04-27T20:50:20.966Z","5.1.7-alpha-update-icons-1.4":"2021-04-28T14:23:45.394Z","5.1.7-alpha-update-icons-2.4":"2021-04-28T15:19:25.348Z","5.1.7":"2021-04-29T12:19:57.666Z","5.1.8-alpha-add-font-size-6125.1.7":"2021-07-07T16:53:57.130Z","5.1.8":"2021-07-07T17:24:15.346Z","5.1.9":"2021-07-23T22:17:55.168Z","5.1.12-alpha-lerna-force-publish-6137.1.0":"2021-07-26T13:54:32.935Z","5.1.12-alpha-adjust-xsmall-font-size-value-6142.1.0":"2021-08-11T17:25:08.361Z","5.1.12":"2021-08-11T18:10:36.459Z","5.1.13-alpha-update-deps-6177.1.7":"2021-12-30T12:47:45.503Z","5.1.13-alpha-update-deps-6179.1.10":"2021-12-30T18:06:02.989Z","5.1.13-alpha-update-deps-6181.1.11":"2021-12-30T18:12:52.230Z","5.1.13-alpha-update-deps-6221.1.34":"2022-01-04T18:24:10.316Z","5.1.13":"2022-01-05T12:49:49.237Z","5.1.14-alpha-fix-deps-6232.1.2":"2022-02-09T20:32:23.882Z","5.1.14":"2022-02-10T14:42:56.651Z"},"homepage":"https://github.com/CraveFood/farmblocks#readme","keywords":["farmblocks","react"],"repository":{"type":"git","url":"git+https://github.com/CraveFood/farmblocks.git"},"contributors":[{"name":"Crave Food Systems:"},{"email":"https://github.com/CraveFood"},{"name":"Authors:"},{"name":"André L. C. Ferreira","email":"alcf.2099@gmail.com"},{"name":"Fabricio C Zuardi","email":"fabricio@fabricio.org"},{"name":"Felipe Gameiro","email":"fgameiro"},{"name":"Victor Pinho","email":"vitorpinho376"},{"name":"Sammer Soares","email":"samm3r"}],"author":{"name":"Crave Food Systems and AUTHORS"},"bugs":{"url":"https://github.com/CraveFood/farmblocks/issues"},"license":"MIT","readmeFilename":"README.md"}